Thursday, October 22, 2009

Raindrop, Open Messaging for the Open Web

I work for Mozilla Messaging, and we just opened the doors on Raindrop. Raindrop is the reason I had the opportunity to move to Vancouver, BC. It has been fun building it, seeing if we could get something to work.

Raindrop is still very much an experiment and not useful for any day-to-day work. However, it has potential and we need community help to take if further.

Why I like it:
  • It is driven by product design. We want an extensible platform, but a strong, simple product design will be driving much of the development.
  • It is not trying to be a message service in itself, but collect messages from existing services.
  • It is web-based: the default UI is plain HTML/JavaScript/CSS goodness.
  • It is frickin awesome to be able to play with your messages: data mine them, and do interesting display things using simple script languages like JavaScript and Python.
  • It is open: open source and motivated by the Mozilla Manifesto.
  • The Mozilla Messaging team is talented and smart. They are motivated and care about what is best for users.
I am driving the front end development for Raindrop. I used Dojo to create the infrastructure for the pages, using Dijit's dijit._Widget and dijit._Templated as a base for many of the UI widgets.

Dojo's dynamic code loader and Dijit's well-defined methods on widgets have enabled the slick things we are doing with in-place extension editing and updates. JQuery is also included in the page, mostly for extension developers, so you have a choice on what to use, Dojo or JQuery.

While I expect many of the decisions I made about how the front end works might change over time, it has been a joy to make what is there so far.

There is lots to do though. If you want to get involved with the code, check the Hacking page is a good place to get started. There is a screencast of the architecture on the Raindrop home page. There is a Community page too.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.