Backbone.js Resources
Backbone.js is a small library with a focused ecosystem, so a short, well-chosen set of resources covers almost everything you need. This is an annotated directory of the libraries, extensions, documentation, and communities worth knowing, with a note on what each is actually for. It favours things that still work and still matter for maintaining or learning Backbone today, rather than a long list of abandoned links.
Where a concept is explained on this site, the entry links to it so you can go from tool to understanding in one step.
What you'll learn
The core libraries
Backbone depends on a couple of libraries, and knowing the role of each prevents confusion later.
What you actually need to run Backbone
- Backbone.js · the library itself, providing models, views, collections, and routers. Read the Backbone guide for how these fit together.
- Underscore.js · a hard dependency that supplies the utility functions and templating Backbone uses internally. Lodash is a common drop-in alternative.
- jQuery · optional but commonly paired, used for DOM manipulation and as the default for Backbone view rendering and AJAX sync.
Extensions and plugins
A few extensions add structure that core Backbone deliberately leaves out.
Adding structure when you need it
- Marionette · a framework on top of Backbone that adds opinionated view types, regions, and application structure, useful once a project outgrows hand-rolled patterns.
- Backbone.Radio · a messaging system for decoupled communication between parts of an app, the same idea as the bus in the event-driven UI example.
- Backbone.LocalStorage · a sync adapter that persists models to the browser instead of a server, handy for offline-first demos and prototypes.
Official documentation and source
For a library this size, the primary source is short enough to read directly.
Going to the source
- The annotated documentation · the official site doubles as a reference and a readable, annotated source, which is the fastest way to confirm exact behaviour.
- The GitHub repository · the source is compact enough to read end to end, and the issue history explains many design decisions. Reading it is genuinely instructive.
Books and long-form tutorials
A handful of longer texts go deeper than any single article.
Where to read at length
- Developing Backbone.js Applications · a thorough, freely available book covering models through full application structure, still a solid long-form reference.
- This site · the foundations cluster and the Backbone learning path give a sequenced route through the core ideas.
Example projects to learn from
Reading working code teaches patterns that prose cannot.
Code you can run and read
- The TodoMVC Backbone example · the classic reference implementation, useful for comparing Backbone against other frameworks solving the identical problem.
- This site is runnable examples · the examples hub has focused, runnable demos for the router, model, view, and collection, each tied to its explainer.
Community and getting help
Backbone is mature, so help tends to come from archives as much as live channels.
Where answers live
- Stack Overflow · the backbone.js tag holds years of answered questions, and most problems you hit have already been solved there.
- GitHub issues · for library behaviour and edge cases, the repository issues are often more precise than general forums.
Frequently Asked Questions
What libraries does Backbone.js require?
Backbone requires Underscore.js, which supplies its utility functions and templating, and Lodash works as a drop-in alternative. jQuery is optional but commonly paired for DOM manipulation and AJAX sync.
Is Marionette still worth using with Backbone?
Marionette adds view types, regions, and application structure on top of Backbone, which is useful once a project outgrows hand-rolled patterns. For small apps, core Backbone with good structure is often enough.
Where is the best Backbone.js documentation?
The official annotated documentation is both a reference and a readable source, and the GitHub repository is compact enough to read end to end. This site's foundations cluster adds sequenced explanations.
How do I persist Backbone models without a server?
Use a local storage sync adapter such as Backbone.LocalStorage, which saves models to the browser instead of a server. It is handy for offline-first prototypes and demos.
Read next: frontend developer tools, or the Resources hub.
Want to learn, not just collect?
The Backbone learning path sequences these resources into a route.
Start: Backbone Learning Path →