Client and CLI for smee.io, a service that delivers webhooks to your local development environment.
Install the client with:
npm install -g smee-client
The smee
command will forward webhooks from smee.io to your local development environment.
smee
Run smee --help
for usage.
const SmeeClient = require('smee-client')
const smee = new SmeeClient({
source: 'https://smee.io/abc123',
target: 'http://localhost:3000/events',
logger: console
})
const events = smee.start()
// Stop forwarding events
events.close()
By default, the Smee client does not make use of the standard proxy server environment variables. To add support for proxy servers you will need to provide an https client that supports them such as undici.EnvHttpProxyAgent()
.
Afterwards, you will be able to use the standard proxy server environment variables.
For example, this would use a EnvHttpProxyAgent
to make requests through a proxy server:
const { EnvHttpProxyAgent, fetch: undiciFetch } = require("undici");
const SmeeClient = require('smee-client');
const myFetch = (url, options) => {
return undiciFetch(url, {
...options,
dispatcher: new EnvHTTPProxyAgent()
})
};
const smee = new SmeeClient({
source: 'https://smee.io/abc123',
target: 'http://localhost:3000/events',
logger: console,
fetch: myFetch
});
const events = smee.start();