Make your Backbone applications dance!

About

Backbone.Marionette is a composite application library for Backbone.js that aims to simplify the construction of large scale JavaScript applications.

It is a collection of common design and implementation patterns found in the applications that we have been building with Backbone, and includes pieces inspired by composite application architectures, event-driven architectures, messaging architectures, and more.

Getting Started

If this is your first time trying out Marionette, we suggest you start by reading Addy Osmani’s Backbone Fundamentals book, which includes a chapter on getting started with Marionette.

If you'd like to play with Marionette without having to download any JavaScript files, or set up a web server / page / editing environment on your system, there is a jsFiddle available for getting started with Marionette:

Once you're ready and want to download and use Marionette, the easiest thing to do is grab a pre-packaged build from the Downloads section. These archives contain all of the .js files that you need to get started with Marionette.

Key Benefits

  • Scale applications out with modular, event driven architecture
  • Sensible defaults, such as using Underscore templates for view rendering
  • Easy to modify to make it work with your applicaton's specific needs
  • Reduce boilerplate for views, with specialized view types
  • Build on a modular architecture with an Application and modules that attach to it
  • Compose your application's visuals at runtime, with Region and Layout
  • Nested views and layouts within visual regions
  • Built-in memory management and zombie killing in views, regions and layouts
  • Built-in event clean up with the EventBinder
  • Event-driven architecture with the EventAggregator
  • Flexible, "as-needed" architecture allowing you to pick and choose what you need
  • And much, much more

Downloads and Documentation

v1.0.3 · See Upgrade Guide · See Changelog

Prerequisites

Marionette relies on Underscore, Backbone, jQuery, and various other libraries as it's foundation.

Featured Video

Tekpub's Rob Conery and Marionette's Derick Bailey joined up to record a screencast on migrating an existing Backbone.js application to Marionette. The result has been released as a free episode to help you better understand how you can begin using Marionette today, without having to re-write your app from scratch.

Check out the rest of the Tekpub "Playing With Backbone" series for a walk-through of building a real Backbone app from the ground up.

Other Videos

Other videos, screencasts and recorded presentations that cover introductions to, and use of MarionetteJS.

STICKERS!!!

Get Yours From DevSwag

We've teamed up with the fine folks over at DevSwag to offer you an easy way to order your own stickers!

But while Marionette talks about making your projects dance, we make no such guarantees about these stickers. :D We do think they're fun to look at and they make an amazing laptop decoration. Show your love of puppeteering and composite application architecture!

These awesome stickers are printed by StickerMule, and are the highest quality vinyl stickers, coming in at 2.27x3 inches. The perfect size for any space on your laptop lid.

ORDER NOW!

Companies using Marionette.js

  • Advanseez
  • Airbrake
  • Crashlytics
  • Crowdtwist
  • cynergy
  • Inspectall
  • Learnvest
  • myEdu
  • OneHealth
  • RayGun
  • Railslove
  • Raven HQ
  • Red Bull Music Academy Radio
  • Roastlog
  • Stipple
  • StubHub
  • TipTap
  • zweitag