Today we’re releasing the application architecture of moviepilot.com into the public: Meet Chaplin! In April 2011, Moviepilot, a successful Berlin-based startup, asked us to help building their new product moviepilot.com.
After having established an international fan-base of over four million movie addicts on their facebook page, they wanted to use this momentum to create a social place for discovering upcoming movies and tracking them from rumor to release.
Behind the scenes of Moviepilot
Recently, several frameworks based on Backbone were released, most notably Thorax and Marionette. Independently from each other, we came to similar conclusions during the development of moviepilot.com.
Meet Chaplin, an Application Architecture based on Backbone
Today we’re releasing the application architecture of moviepilot.com: Meet Chaplin! It’s free and open-source, MIT-licensed.
Chaplin is not a ready-to-use library, but an example how a real-world Backbone application might look like. Consider it as a scaffold which you might build upon and adapt to the specific needs of your application. The key features of Chaplin include:
- Pure CoffeeScript classes wrapped in RequireJS (AMD) modules
- Cross-module communication using the Mediator and Publish/Subscribe patterns
- Separated routing and business logic by introducing controllers
- Application-wide view management
- Strict memory management and object disposal
You will find an in-depth explanation of the application structure on the Chaplin Github page.
Chaplin comes with a simple demo application which allows you to log in via Facebook on the client-side and browse your Facebook Likes. While this isn’t by far as complex as moviepilot.com, it demonstrates how application modules interact and how a client-side login might be implemented.
Fork Chaplin on Github
We’re also considering initiating a Backbone user group meet-up in Berlin in the next months. Let us know if you’re interested to join!