node package manager
Stop writing boring code. Discover, share, and reuse within your team. Create a free org ยป



npm version

Chimneypot is a lightweight Node.js handler for GitHub webhooks. It allows you to listen to all kinds of GitHub events and execute functions on your server.


Chimneypot was designed to be simple, succinct and easy to use.

To print to the console every time you receive a push event from your repo:

var chimneypot = require('chimneypot');

var pot = new chimneypot({
  port: 3000,
  path: '/hook',
  secret: '08394e1da557b56373ece704d5bcee45'

pot.route('push', function (event) {
  console.log('We have received a push event!');


Chimneypot will then be listening for any push events to *:3000/hook. When it receives a push event, it will log to the console:

We have received a push event!


You can install the Chimneypot npm package with the following command:

$ npm install chimneypot --save


Chimneypot is completely released into the public domain, using The Unlicense. To see the full license text included with the project, you can read the LICENSE file.