Get email or Slack alerts when specific files in your GitHub repositories change
Ruby CSS HTML CoffeeScript JavaScript
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
bin
config
db
lib
log
public
spec
tmp
vendor/assets
.env.example
.gitignore
.rspec
.ruby-version
Gemfile
Gemfile.lock
Procfile
README.md
Rakefile
config.ru

README.md

🚨 DiffAlert

Get email or Slack alerts when specific files in your GitHub repositories change

Screenshot

screen shot 2017-05-18 at 6 41 08 am

Demo

Try it out for yourself at http://diffalert.nickholden.io.

Installation

git clone git://github.com/nholden/diffalert
cd diffalert
brew install redis postgresql heroku
bundle install
bundle exec rake db:reset
cp .env.example .env

Getting started

heroku local

Navigate to http://localhost:5081 (or whichever port you choose in .env), click "sign up," and create an account. Click "add trigger," and follow the prompts to begin receiving alerts on any file in a GitHub repository for which you have access to manage webhooks.

If you’re running DiffAlert locally, you’ll need to make your server accessible to the internet so that GitHub webhooks are able to access DiffAlert's endpoint. Consider a service like Forward. Otherwise, try deploying DiffAlert to Heroku for free.

Slack alerts will work out of the box with a new incoming Slack webhook. Email alerts are sent by Mailgun. Sign up for a free account at mailgun.com. You’ll need to update .env to reflect your Mailgun credentials. Unless the RELEASE_STAGE environment variable is set to "production", all emails will be intercepted and sent to the email specified by the NON_PRODUCTION_SEND_TO environment variable.

Slack and email alerts are sent in the background by Sidekiq. You can monitor Sidekiq via the web UI at http://localhost:5081/sidekiq. When you deploy DiffAlert to a production environment, the Sidekiq web UI will be protected by HTTP Basic authentication. You’ll need to set the SIDEKIQ_USERNAME and SIDEKIQ_PASSWORD environment variables in order to access the Sidekiq web UI in production.

Testing

bundle exec rake

Contributing

Contributions are welcome from everyone! Feel free to make a pull request or use GitHub issues for help getting started, to report bugs, or to make feature requests.

License

This project was created by Nick Holden and is licensed under the terms of the MIT license.