Saturday, August 28, 2010

The Future is here. I just forked a running website:

I recently started working on a Twitter client. This seems like a really stupid idea because there are so many already. My main motivation was the stale development of the Tweetie for Mac client and that I wanted something really, really hackable. Ideally with the ability to do JavaScript plugins.

There comes
  • A Twitter client with a node.js backend that talks to twitter's brand new user stream API
  • This means updates appear in true realtime in your timeline. No polling involved.
  • When you scroll down, streamie maintains your scroll state as new tweets appear. I can't use a Twitter client without this feature
  • It does some more stuff, but is far from finished.

Now be warned. Streamie is ultra alpha. It will probably crash the moment this blog post appears and it might just post goatse pictures to twitter on your behalf.

If you are not scared, read on:

Ultra Hackable

Now on to the title of this post:
Streamie is extremely hackable. You should never really need to do anything with the backend system (unless you want to fix bugs). The frontend has a access to the full Twitter REST API, so all regular features for a Twitter client should be implementable from the frontend.

Now if you want to build your own version of streamie, there are nine easy steps:
  1. Fork Streamie on Github
  2. git branch gh-pages
  3. git checkout gh-pages
  4. git pull origin gh-pages
  5. git submodule init; git submodule update
  6. edit something in ./public
  7. git commit
  8. git push origin gh-pages
  9. Wait a little on the first time
Now go to and visit your new Twitter client.

This is my personal branch.
I love this idea. Maybe it is really stupid and people will make evil clients abusing Streamie's oauth secrets, but maybe this will work and we'll build a great client together :)

This might be a good way to learn all the new hot stuff built into Streamie: