Description
Klaxon is a free, quick to set up and easy to use robot that checks websites regularly so you don't have to.
You list websites you want monitored and Klaxon will visit them and, if they change, email you what's different. It saves you having to reload dozens of links yourself every day.
It's perfect for monitoring website changes you might miss, like freedom of information disclosure logs, court records, and anything related to Donald Trump. And it can even send notifications to your Slack and Discord channels.
Read more below, or say hello to the humans behind the project at the Google Group email list.
Klaxon alternatives and similar software solutions
Based on the "Automation" category.
Alternatively, view klaxon alternatives based on common mentions on social networks and blogs.
-
Home Assistant
:house_with_garden: Open source home automation that puts local control and privacy first. -
n8n
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations. -
Gekko
DISCONTINUED. Gekko is a Bitcoin TA trading and backtesting bot which support multiple exchanges and cryptocurrencies. -
Zenbot 3
DISCONTINUED. Zenbot is a command-line cryptocurrency trading bot using Node.js and MongoDB. -
WebUI-aria2
The aim for this project is to create the worlds best and hottest interface to interact with aria2. Very simple to use, just download and open index.html in any web browser. -
Healthchecks
Open-source cron job and background task monitoring service, written in Python & Django -
Automatisch
The open source Zapier alternative. Build workflow automation without spending time and money. -
StackStorm
StackStorm (aka "IFTTT for Ops") is event-driven automation for auto-remediation, incident responses, troubleshooting, deployments, and more for DevOps and SREs. Includes rules engine, workflow, 160 integration packs with 6000+ actions (see https://exchange.stackstorm.org) and ChatOps. Installer at https://docs.stackstorm.com/install/index.html -
Actionsflow
The free Zapier/IFTTT alternative for developers to automate your workflows based on Github actions -
Medusa
Automatic Video Library Manager for TV Shows. It watches for new episodes of your favorite shows, and when they are posted it does its magic. -
Podgrab
A self-hosted podcast manager/downloader/archiver tool to download podcast episodes as soon as they become live with an integrated player. -
”Task
”Task is an automation engine that models and executes business processes declared in yaml. âïžđ -
HRConvert2
A self-hosted, drag-and-drop & nosql file conversion server & share tool that supports 445 file formats in 13 languages. -
Accelerated Text
Accelerated Text is a no-code natural language generation platform. It will help you construct document plans which define how your data is converted to textual descriptions varying in wording and structure. -
SiteInspector
DISCONTINUED. A tool for catching spelling errors, grammatical errors, broken links, and other errors on websites. -
FHEM
Branch 'master' is an unofficial read-only-mirror of https://svn.fhem.de/fhem/trunk which is updated once a day. (branch sf_old a mirror of the old repo: svn://svn.code.sf.net/p/fhem/code/trunk) -
feedmixer
A self-hosted API to fetch and mix entries from Atom and RSS feeds (returns Atom, RSS, or JSON) -
LazyLibrarian
LazyLibrarian is a program to follow authors and grab metadata for all your digital reading needs. It uses a combination of Goodreads Librarything and optionally GoogleBooks as sources for author info and book info.
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Klaxon or a related project?
README
Get emailed when a website changes
Klaxon is a free, quick to set up and easy to use robot that checks websites regularly so you don't have to.
You list websites you want monitored and Klaxon will visit them and, if they change, email you what's different. It saves you having to reload dozens of links yourself every day.
It's perfect for monitoring website changes you might miss, like freedom of information disclosure logs, court records, and anything related to Donald Trump. And it can even send notifications to your Slack and Discord channels.
Read more below, or say hello to the humans behind the project at the Google Group email list.
Alerting journalists to changes on the web
Built and refined in the newsroom of The Marshall Project, Klaxon has provided our journalists with many news tips, giving us early warnings and valuable time to pursue stories. Klaxon has been used and tested by journalists at The Marshall Project, The New York Times, the Texas Tribune, the Associated Press [and elsewhere](NEWSROOMS.md).
The public release of this free and open source software was supported by Knight-Mozilla OpenNews.
How Does Klaxon Work?
Klaxon enables users to "bookmark" portions of a webpage and be notified (via email, Slack, or Discord) of any changes that may occur to those sections. [Learn more about bookmarklets on the help.md page](data/help.md).
Setting up your Klaxon
Klaxon is open source software built in the newsroom of The Marshall Project, a nonprofit investigative news organization covering the American criminal justice system. It was created by a team of threeâIvar Vong, Andy Rossback and Tom Meagherâand it is subject to the kind of shortcomings any young, small side project might encounter. It may break unexpectedly. It may miss a change in a website, or an email might not fire off correctly. Still, weâve found it immensely useful in our daily reporting. We want other journalists to benefit from Klaxon and to help us improve it, but keep these caveats in mind and use it at your own risk.
Our team will keep hacking on Klaxon in spare moments, and we plan to keep it humming for our own use. But we think this project has the potential to help just about any newsroom. For it to succeed and to evolve, it will depend on the contributions from other journalist-developers. We are excited about the prospect of building a community around this project to help maintain it. So when you spot the inevitable bug, please let us know. And if youâd like to help us [make this better](CONTRIBUTING.md), or add new functionality to it, weâd love to have your help.
Getting started
One of our goals for Klaxon is to make it as easy as possible for reporters and editors without tech backgrounds to use and to set up. Getting your own Klaxon running in your newsroom will require you to run a handful of instructions one time through the help of online services Heroku and Github. Following these directions, it should take maybe 10 minutes to set up your Klaxon, including the time to create accounts on Heroku and Github if you need to.
We use Heroku to deploy software in The Marshall Project newsroom. We think it makes some of the tedious work of running servers a lot easier to deal with, so we designed Klaxon to be easily deployable on Heroku. (If youâd like to run this in your newsroomâs preferred server setup â say using Docker or a Linux machine â we encourage you to do so, and to send it back to us, with documentation, [in a pull request](CONTRIBUTING.md).) If you want to use our setup, youâll need to create an account with Heroku, if you donât already have one.
How much will this cost?
It should be free to get started with Klaxon on Heroku, but if you start using it a lot, you may need to pay a small amount to keep it running. Out of the box with Heroku, for free youâll get:
- 12,000 emails per month with SendGrid
- 10,000 records of changes in your Postgres database
- Your web interface available 18 hours a day
- Checks of each of your watched sites every 10 minutes with Herokuâs Scheduler.
If you find your newsroom hitting the limits of these free tiers, you can pay to expand them. To send up to 40,000 emails a month, you can upgrade your Sendgrid add-on in Heroku for $9.95 a month. If you need to store more records in your database, you can pay $9 a month for up to 10 million rows. And if you need your web interface running around the clock, you can upgrade your Heroku dyno from the Free to the Hobby level for $7 a month. Some of these wonât be necessary, particularly in smaller newsrooms, but itâs good to know.
If you want to track files with Klaxon, youâll have to set up an account with Amazon Web Servicesâ Simple Storage Service (S3). If you are tracking a few dozen files on the web that update irregularly, it should cost you pennies each month. (More on this option to comeâŠ)
Letâs do this
If you have a Heroku account and youâre ready to go, itâs time to click on this button:
You must be logged into your Heroku account, and it will take you to a page to configure your new app in Herokuâs dashboard. First, give your app a name in the first box. While this is technically optional, this will also double as the URL for your Klaxon instance, so think carefully about it for a moment. Try maybe an abbreviation for your newsroom with a hyphen and the word klaxon, like âwp-klaxonâ or âsl-klaxonâ. This will become a URL as https://sl-klaxon.herokuapp.com/
Scroll down to the â* Admin_emailsâ field, add a comma-separated list of email addresses for your newsroomâs Klaxon administrators. These administrators will be able to create accounts for any user in your organization, as well as configure various Klaxons and integrations with services like Slack and Discord.
Click the big purple âDeploy for Freeâ button. If you havenât given Heroku your credit card yet, it will ask you for your information now. As long as youâre on the free settings, it wonât charge you, but Heroku wants to be prepared in case you change tiers. After that, give Heroku a few minutes for the app to build.
When you see this message:
[](docs/deploying.png)
...youâre almost done.
Click on the button that says âManage Appâ. This takes you behind the scenes of the various components powering your Klaxon. On this resources screen, click on the link for âHeroku Scheduler,â which will take you a new screen where you must add the very important piece. The scheduler is what runs every 10 minutes to actually check all the sites and pages youâre watching. Click the long, purple âAdd new jobâ button. In the text box next to the dollar sign, type the words ârake check:allâ with the colon and without the quotes. Under âFrequency,â change it from âDailyâ to âEvery 10 minutesâ. Click the purple âSaveâ button and your scheduler item should look like this:
[](docs/scheduler.png)
Unfortunately our email provider Sendgrid now requires an additional step to confirm that you are not a spammer. Your new Sendgrid account is now in a "suspended" state, and to get it unsuspended you have to contact Sendgrid support. You can do this by clicking the Sendgrid logo on the Resources tab. If clicking on the logo takes you to an error page, do not worry. This has been known to happen as Sendgrid's system has undergone redesigns. Instead, go to Sendgrid's page to ask for support. Be sure to use the same email address associated with your Heroku account and provide the url of your Klaxon instance. When they ask for "Business impact," choose "P3 General - You have a question about Sendgrid or how to use its products". This step is a nuisance, but important. You will not be able to get an email log in to Klaxon until you are cleared by Sendgrid. This usually happens pretty quickly (hours not days).
Unfortunately you are not yet done configuring Sendgrid. There are more steps to set up your account.
- From the Heroku application page, click on the "Resources" tab, and click the link to the Sendgrid plugin, this will take you to the Sendgrid website.
- In the left hand column choose Settings -> API Keys. Click the blue "Create an API Key" button in the top right corner.
- In the form that appears fill in the API key name (doesn't matter what you name it), make sure the "Full Access" option is selected, and click "Create & View".
- Click the API key to copy it to your clipboard. Then navigate back to Heroku.
- In the "Settings" tab of your Heroku app click the "Reveal Config Vars" button.
- Change the
SENDGRID_PASSWORD
variable to the API Key by clicking the pencil icon next to it, pasting it in, and saving it. - Change the
SENDGRID_USERNAME
variable to the string "apikey" in the same manner.
Now you'll need to set up a "Verified Sender" account in Sendgrid using an email address that you have access to. See https://github.com/themarshallproject/klaxon/issues/404 for some more context.
When you've completed this process in Sendgrid, you'll need to set the MAILER_FROM_ADDRESS
variable as you did above to your verified sender email address.
Finally, now, you should be done setting up your Sendgrid account.
At the top of the scheduler page, click the link that is the name of your app (âsl-klaxonâ). This will take you to back to Klaxon's dashboard. Then click the button in the upper right that says "Open app," and this should take you to your Klaxon's login screen on the web.
[](docs/login_screen.png)
Type the admin email address that you gave the Heroku dashboard earlier into the text box and hit the âLoginâ button. Youâll then be redirected to a page that says an email has been sent to you. Check your inbox. This may take a minute or two to arrive.
In the email, click the âGo to Dashboardâ button. Youâre now authenticated in the system and can access your Klaxon. Configuring your Klaxon Once youâre logged in, you should see the main page that will fill up in the coming days with the feed of all of your Klaxon updates. Now, you want to go add other users in your newsroom to the system. Click the âSettingsâ button in the upper right corner, and select âUsersâ from the menu.
On the right side of the page, click the âCreate New Userâ button. Add the reporterâs first and last name and email address, and she will get an email allowing her into the Klaxon. Now, finally, you and your users can start adding web pages you want Klaxon to watch.
Limit new users to only those on specific email domain(s)
By default, people with any email address can be added as new users. If you'd like to allow only users with specific email domains, set the APPROVED_USER_DOMAINS
environment variable (or "Config Variable" in Heroku's lingo). That variable should be a comma-separated list of domains, e.g., themarshallproject.org,nsa.gov
.
Notify a Slack or Discord channel
Youâre all set for email notifications. If youâd like to also receive alerts through Slack and/or Discord, you can set that up now too. (If you want alerts from other services, [we welcome pull requests](CONTRIBUTING.md)) Click on the âSettingsâ button in the upper right corner of the page and choose âIntegrationsâ from the menu. On the Integrations page, click the âCreate Slack Integrationâ button. You can add an integration for any number of channels in your newsroomâs Slack or Discord. For each channel, you just have to set up an Incoming Webhook.
Slack
In Slack, click on the dropdown arrow in the upper left corner and choose âApps & Integrationsâ from the menu. This will open a new window in your browser for you to search the Slack app directory. In the search box, type âIncoming Webhooksâ and choose that option when it pops up. If you already have webhooks, youâll see a button next to your Slack organizationâs name that says âConfigure.â Otherwise, click the green button that says âInstallâ.
Now, choose the channel that you want the Klaxon alerts to go to from the dropdown menu. Weâd recommend that you not send them to #General, but maybe create a new channel called #Klaxon. After you create or choose your channel, click the green button that says âAdd Incoming Webhooks Integrationâ. Near the top of the next screen, you should see a red URL next to the label âWebhook URLâ. Copy that URL and switch over to your browser window with Klaxon in it. Paste the URL into the box labeled âWebhook URL,â and type the name of the channel you want your Slack alerts to go to into the âChannelâ box (this should be the same channel name you used in Slack when you created the integration). Now click the âCreate Slack Integration Buttonâ. Now you should be all set. If you want to have the ability to send Klaxon alerts to other channels, for specific reporting teams or for certain projects, you can repeat this process.
Discord
In Discord, click on the dropdown arrow in the upper left (next to your server name) and choose âServer Settingsâ from the menu. Click âIntegrationsâ in the left sidebar, then click the âCreate Webhookâ button.
Now, choose the name for your webhook (you can leave it the default random name if you'd like) and choose the channel that you want the Klaxon alerts to go to. Weâd recommend that you not send them to #general, but maybe create a new channel called #klaxon (you'll need to do this in your normal server view first). After you choose your channel, click âCopy Webhook URLâ. Switch over to your browser window with Klaxon in it. Paste the URL into the box labeled âWebhook URL,â and type the name of the channel you want your Discord alerts to go to into the âChannelâ box (this should be the same channel name you used in Discord when you created the integration). Additionally, you must append â/slackâ (without quotes) to the end of your webhook URL, as these alerts will be sent to Discord as a Slack-Compatible Webhook. Now click the âCreate Slack Integration Buttonâ. Now you should be all set. If you want to have the ability to send Klaxon alerts to other channels, for specific reporting teams or for certain projects, you can repeat this process.
Applying upgrades as the project develops
When we release major changes to Klaxon, weâll make an announcement to our Google Group email list. At that point, youâll likely want to adopt those in your system as well. If you're comfortable using git on the command line, this would require just a few simple commands: pull the changes from the master branch of this repo, merge them into your forked repo and push it all to Heroku.
But if you're not a programmer, there is still a fairly painless way to upgrade by using Github and Heroku. First, youâll need to fork our repo to your own Github account to receive the updates, and then you can use Herokuâs dashboard to push the changes to your application.
If you donât already have an account at Github.com, now is a good time to set one up (donât worry, itâs free). This has the added benefit of giving you access to comment on the issues our community is working on developing. Once youâre logged into Github with your new account, go to the repo for the Klaxon project and click the âForkâ button. This copies our code into a separate version under your Github account that you can tie to your Klaxon instance running on Herokuâs servers.
Now, go to https://dashboard.heroku.com and choose your application (remember, the one you named when you first set up Klaxon, probably sl-klaxon or something similar if you followed our advice above). From the menu of options at the top of the page, click on the âDeployâ button. Look for section called âDeployment method,â which should be the second from the top of the Deploy page.
You should see three buttons. Click the one in the middle that says âGithub Connect With Githubâ. The options at the bottom of the page will change. Now, click the gray button that says âConnect To Githubâ. It will pop up a new window to log you into Github, if you arenât already. In that window, click the âAuthorize Applicationâ button. The popup window should now close itself.
On the Heroku page, in the âConnect to Githubâ section at the bottom, type âklaxonâ into the search box next to your Github username. Click the âSearchâ button. Next, click the âConnectâ button next to the name of your forked repo that pops up below. Finally, select the 'master' branch from the dropdown and click âEnable Automatic Deploysâ button in the âAutomatic deploysâ section. This ties your Heroku server to your Github account, so that every time you merge updates into your forked version of the Klaxon repository, they will automatically go live on your server with the latest updates. You'll only have to do all of this one time to set up the pipeline.
Note: if you are upgrading from version 0.2.0 or lower, please follow the additional instructions in [migration_setup.md](migration_setup.md)
Finally, each time an update is announced on the Google Group, you can go to your forked version of the repo on Github and click the green âNew Pull Requestâ button to pull the changes from our master repo.
On the "basefork" dropdown on the left, click and select your repo. Then click the âcompare across forksâ link and change the âhead forkâ on the dropdown menu to âmarshallproject/klaxonâ. Make sure both the branches are set to âmasterâ (they should already be). Below that, a green checkbox and the words âAble to mergeâ should appear. If they do, click the green âCreate Pull Requestâ button. Give this pull request a title. You might want to say âMerging Klaxon release 0.9.1â or whatever the new version number is and click the âCreate Pull Requestâ button again.
You should then get a response that looks like this:
[](docs/merge_pr.png)
If it does, and everything is green, youâre good to go. Just click the âMerge pull requestâ button then click the âConfirm mergeâ button and thatâs that.
Acknowledgements
The core contributors to Klaxon have been Ivar Vong, Andy Rossback, Tom Meagher and Gabe Isman.
We've been grateful for additional contributions to the project from:
- Jackson Gothe-Snape, SBS News
- Cameo Hill
- Emily Hopkins
- Matthew Verive
- Jason Kulatunga
- Yolanda Martinez
- Jeremy Merrill
- Ryan Murphy
- Justin Myers
- Kevin Schaul
- Ari Shapell
- Jeremy Singer-Vine
- Mike Stucka
- k.wakitani
- Bob Weston
We also owe thanks to Knight-Mozilla OpenNews, which supported the initial public release of this free and open source software.