-
-
Using ifttt to track your Github activity
Pre(r)amble
At the first Flash in TO meetup that I attended (back in 20-diggity-4 or something) , someone did a presentation about setting up an IM bot to notify team members about activity on a shared code repo.
Flash forward to now, and I still haven’t bothered getting off of the futon to roll my own version of a repo activity notifier. Today, after the millionth time that Brent had to inform me that he pushed a commit to Github on a branch that he figured I was probably working on, I decided to do something about this sad state of affairs, using the latest lazy programmer’s tool: ifttt.
Implementation
The setup for my Github activity notifier is very simple:
- Copy the Atom feed URL off of the dashboard of whatever Github account you would like to track.

- Create a new ifttt task, where the trigger is a new feed item. Alternatively, you can choose the “new feed item matches” trigger, which allows you to apply a keyword/phrase whitelist filter to the Github Atom feed.
- Paste in that Atom feed URL that you got in step 1 into the Feed URL field of the ifttt task.

- For the “that” part of your ifttt task, you should choose Google Chat. Obviously, you’ll need to activate the Google Chat ifttt channel. If you don’t have a Google Chat account, then get one. o_o
- Your ifttt task’s one and only action option is “Send me a chat,” so choose that.
- After that, you’ll be able to craft the message that the ifttt IM bot will send to you. My message format is
{{EntryPublished}} – {{EntryTitle}}: {{EntryContent}} ({{EntryUrl}}) - You’re done!
Closing Thoughts
I wasn’t sure how my IM client (Adium) would handle the HTML in the entry nodes of the Atom feed. I’m happy to say that both Adium and Google Chat (in Gmail) handle that content without any problems. Very happy.
I initially thought that it might be a good idea to use Github’s service hooks to consume the activity stream. The problem is that you have to configure service hooks on a per repo basis. We have too many repos in our Github organization account to have to maintain all of those service hooks. It wouldn’t be very DRY at all.
In the end, I think a better solution would still need to involve integration with Github’s service hooks, since that would essentially allow for realtime notification. ifttt runs tasks every 15 minutes, which is not great (not bad for my needs, but still not great). It’d be awesome if Github could figure out a way to implement account-wide service hooks, but perhaps that’s crazy talk.
- Copy the Atom feed URL off of the dashboard of whatever Github account you would like to track.
-
-
-
URL Hunter
An experimental game using the URL bar as the game screen.
-
-
-
-
Mighty Digital is an agency of designers and developers, artists and raconteurs, dreamers and planners, analysts and optimizers. We use entertainment, social media, music, websites, interactive displays and software applications to make brands famous. We are dangerously obsessed with the internet.
Careers
If you are smart, talented and have an undying love for the Internet, see what we’re looking to add to the Mighty family.
Follow Mighty people
Contact Mighty
If you're interested in opportunities at Mighty or want your brand to be more relevant than it was yesterday contact:
Jon Toews - Creative Director
Carol Fox - Chief Operating Officer
Or call us at: (416) 927-3316






