-
Notifications
You must be signed in to change notification settings - Fork 0
Extensions, Plugins, Resources
Backbone's only hard dependency. http://underscorejs.org
Needed if you'd like to parse and serialize JSON in older browsers (read: "Internet Explorer") https://github.com/douglascrockford/JSON-js
Recommended for DOM manipulation and Ajax. http://jquery.com
A performance-minded Underscore alternative with customs builds and additional features. http://lodash.com/
A jQuery alternative for mobile apps http://zeptojs.com
NB: Zepto isn't fully compatible with jQuery, use at your own risk
A tiny drop-in replacement for jQuery to allow Backbone to work while relying on only native DOM APIs. https://github.com/inkling/backbone.native
A faster and leaner Backbone for your HTML5 apps. http://exosjs.com
Backbone fork with 100% optional dependencies, speed improvements and other enhancements.
A Firebug extension to debug Backbone based applications running off web-browsers. Understand Backbone application behavior without wading through JavaScript code. Work with application level constructs, pursue what-if exploration and more...
https://github.com/dhruvaray/spa-eye
Chrome Developer Tools extension for debugging Backbone.js applications. Displays in real-time all the application views, models, collections and routers, with detailed information such as handled jQuery events, model attributes, collection models, sync status, events triggered and more.
https://github.com/Maluen/Backbone-Debugger
- A plugin to create entire Document structures with nested Backbone.js Models & Collections with deep model references and event bubbling.
- https://github.com/icereval/backbone-documentmodel
- Allows you to get and set your attributes on a model using a jQuery like api
- https://github.com/rhysbrettbowen/Backbone.ModelAttrs
- Create a new model with computed properties from an existing model and a schema that keeps itself up to date (great to use as a serialized model for templates - separates original model and computed properties while still being reactive).
- https://github.com/rhysbrettbowen/Backbone.ModelMorph
- The plugin helps you define schemas for your models. It supports a regular types, arrays, nested or reference models/collections, allows to define a custom data types and computable properties.
- https://github.com/DreamTheater/Backbone.Schema
Generate customisable forms from your model schema. Features include custom editors, nested forms, editable lists and validation.
Improved support for models with nested attributes. Get and set attributes and listen to changes on them using a path, e.g. get('user.address.ln1').
A plugin to make Backbone keep track of nested attributes.
Nest Models and Collections within Models and Collections.
A small plugin that manages model changes that accrue between saves, giving a Model the ability to undo previous changes, trigger events when there are unsaved changes, and opt in to before unload route handling.
Get the code and read the documentation:
A simple undo manager that creates undo points based on triggered events. Suitable for small to mid-sized applications.
Get the code and read the documentation:
Create undo points to store / restore your model's state.
Get the code and read the documentation:
Memento pattern realization for Backbone.js models with more flexible API than in Backbone.Memento
Simple helpers to configure your models from one configuration object.
- Provides per-attribute serialization and deserialization (using Underscore-Awesomer's _.toJSON and _.parseJSON functions).
- Useful for client-side localized string lookups, custom Date storage (for CouchDB views), attribute validations, and much more!
- https://github.com/kmalakoff/backbone-articulation
- https://github.com/kmalakoff/underscore-awesomer
- Validations are declared on the model
- Conventionally updates your html with error classes and error messages
- Easy to extend with custom validators
- http://github.com/thedersen/backbone.validation
- Validations are declared on the model
- Easy to extend with custom validators
- Provides the replacement of out-of-range values with data from the defaults hash
- http://github.com/toddself/Backbone.Validator
- Standalone validator
- Easy to attach validation to views
- Extendable built-in validators
- Example: Model validation (with nested attributes) & data binding using Backbone.Validator + Backbone.Stickit + Backbone.Ext
- https://github.com/fantactuka/backbone-validator
- Store view related attributes on a Backbone.ViewModel and keep your Backbone.Model to persistance/state attributes
- http://github.com/tommyh/backbone-view-model
- Lets you build your views while you wait for models to load.
- Notifies you when a model unloads so you can change your view state.
- Compatible with Knockback.js (https://github.com/kmalakoff/knockback)
Pretty much just a collection and model id reference. Simple, but useful.
- Finite-state machine (FSM) for for Backbone.Model. Elegant syntax, and very short. Patterned after the Ruby workflow gem.
- https://github.com/kendagriff/workflow.js
- Lets you model attributes with dot-syntax.
- e.g. song.get('album.title')
- https://github.com/amccloud/backbone-dotattr
- Enables you to override getters and setters with logic
- https://github.com/asciidisco/Backbone.Mutators
- One Collection, different model objects, mapped easy via configuration
- https://github.com/asciidisco/Backbone.Chosen
- Cache calls to
fetch
in memory and localStorage. Handy when you don't control the cache headers on the API you're calling. - https://github.com/mrappleton/backbone-fetch-cache
- Ensures unique model instances inside a Backbone app. Can optionally sync models across windows using localStorage.
- https://github.com/disqus/backbone.uniquemodel
- Adds a toggle method to
Backbone.Model
to easily toggle attribute values. - https://github.com/todd/backbone.model.toggle
- Id generator for
Backbone.Model
. - https://github.com/ask11/backbone-id
-
Backbone.Model
plugin, which generates timestamps attributes automatically. - https://github.com/ask11/backbone-timestamp
- A rich Signal & Slots (Functional Reactive) api using Backbone.
- https://github.com/btakita/backbone-signal
- Computed properties for your Backbone models
- https://github.com/steve8708/Backbone.ComputedModel
- LocalStorage adapter that overrides Backbone.Sync
- https://github.com/jeromegn/Backbone.localStorage
- Making it easy to use backbone with couchdb.
- https://github.com/pyronicide/backbone.couchdb.js
- Bind Socket.io events to backbone models & collections.
- Includes optional replacement for Backbone.sync for use with Socket.io.
- https://github.com/logicalparadox/backbone.iobind
- WebSQL adapter that overrides Backbone.sync
- https://github.com/MarrLiss/backbone-websql
- WebSQL adapter for Backbone with deferred interface
- https://github.com/banyan/backbone.websql.deferred
- Get and set local variables that won't persist on save() calls
- https://github.com/itsjoesullivan/Backbone.slet
- Work with SharePoint items and list as Backbone Models and Collections.
- https://github.com/lstak/Backbone.SharePoint
- Connect to SAP business data through SAP Gateway.
- https://github.com/lstak/Backbone.SAP
- Allows your Backbone.js app to work offline
- https://github.com/Ask11/backbone.offline
- Allows your Backbone.js app to fetch and store data based on the JSON-RPC protocol
- https://github.com/asciidisco/Backbone.Rpc
- Allows your Backbone.js app to store data in local storage when using 'set', as well as reloading on recreation with the same local storage key.
- https://github.com/orizens/Backbone.Safe
- Overrides Backbone.Sync, and allows fetching from remote servers, localstorage, and an in-memory store.
- Allows custom data stores to be added (planned: load data from a js config file).
- Can combine data from multiple sources at fetch time.
- https://github.com/nicoburns/Backbone.Flexisync
- Provides models that support MongoDB Extended JSON format.
- Overrides Backbone.parse and Backbone.sync.
- Can be easily used with http://mongolab.com.
- http://github.com/dealancer/backbone-mongodb
- Overrides Backbone.sync to allow fetching and saving to Windows Azure Mobile Services
- Supports queries that are supported by Windows Azure Mobile Services.
- https://github.com/MSOpenTech/backbone-azure-mobile-services
- A (tiny) framework for mocking up server-side persistence / processing directly in JS.
- Overrides Backbone.sync providing hooks ( per resource, per HTTP verb ) for your own custom persistence / processing scheme.
- https://github.com/biril/backbone-faux-server
- add in middleware functions for a model/collection's sync
- https://github.com/rhysbrettbowen/Backbone.MiddlewareSync
- Dropbox Datastore API adapter for Backbone
- https://github.com/dmytroyarmak/Backbone.dropboxDatastore
- Get and set relations (one-to-one, one-to-many, many-to-one) for Backbone models
- https://github.com/PaulUithol/Backbone-relational
- Provides a lightweight and performant implementation of setting up associations between Backbone models
- https://github.com/dhruvaray/backbone-associations
- Relational associations for Backbone
- https://github.com/dbrady/ligament.js
- enhance Backbone.fetch with async utilities.
- https://github.com/uxnow/Backbone.fetch_
- Add Rails-like nested attributes support for Backbone.Model
- https://github.com/dtmconsultoria/backbone-nested-attributes
- Register collections to share model instances
- https://github.com/rhysbrettbowen/Backbone.ModelRegistry
A pageable, very well tested, drop-in replacement for Backbone.Collection. Supports client-side and server-side pagination, infinite paging, single page and global sorting, and client-side bi-directional event handling. Inspired by Backbone.Paginator, but much better. (Will replace Backbone.Paginator soon)
Capped Collections for BackboneJS.
Load your collections piece by piece. Very useful for large model sets.
Simple helper function that makes it easy to work with nested Backbone collections
- Source: https://gist.github.com/1610397
Create subsets of collections using filter functions that automatically update allowing you to create a tree of collections that is always in sync.
Provides NoSQL queries (like MongoDB) for backbone.js collections
- good readme documentation
- runs on node.js and in the browser
- https://github.com/davidgtonge/backbone_query
Provides extensive querying, filtering, and searching functionality for backbone.js collections
- includes live interactive demo
- source-code documentation only
- runs on node.js and in the browser
- supports NoSQL queries (like MongoDB)
- supports filters (applying a filter function to a collection)
- supports search strings (useful for turning search input fields into useful queries)
- supports pills for search strings (e.g.
author:ben priority:important
) - supports optional live collections (when a model is changed, added or removed, it can automatically be tested against the collections queries, filters, and search string, if it fails, remove it from the collection)
- supports parent and child collections (when a parent collection has a model removed, it is removed from the child collection too, when a parent collection has a model added or changed, it is retested against the child collection)
- https://github.com/bevry/query-engine
- Cache calls to
fetch
in memory and localStorage. Handy when you don't control the cache headers on the API you're calling. - https://github.com/mrappleton/backbone-fetch-cache
Provides filtering of Backbone collections using facets
- Implements projections for Backbone.Collections. A projection for a collection is an another collection which contains a subset of models from an underlying collection and stays in sync with it.
- By default projections maintain an order induced by underlying collection but an order can be customized with a comparator
- Provides
CappedCollection
projection, a projection restricted by a number of elements - Provides
FilteredCollection
projection, a projection restricted by some predicate - Projections can be composed
- https://github.com/andreypopp/backbone.projections
- Backbone-Fill-Collection makes it easy to generate collections with mock data quickly for prototyping
- Sends requests to filltext.com and inserts the results into a backbone collection on every fetch.
- https://github.com/AdamBrodzinski/backbone-fill-collection
- provides a layer on top of a collection that remembers which models are "selected"
- https://github.com/rhysbrettbowen/Backbone.SelectableCollection
- provides a layer on top of a collection that provides you a filtered view of the collection
- uses original collection as prototype so can be used as regular collection
- allows manual filtering so filters can use global changing values
- https://github.com/rhysbrettbowen/Backbone.CollectionFilter
- Simple, dynamic indexes for greasy-fast filtering of collections.
- https://github.com/activecell/backbone-index
- Lazy-ass caches for Backbone collections and models.
- https://github.com/activecell/backbone-memoize
- A read-only proxy of a Backbone.Collection that can easily be filtered, sorted, and paginated.
- Can add / remove multiple filter predicates at any time
- All of the component pieces are split out into their own modules and can be used on their own if you only need e.g. pagination.
- https://github.com/jmorrell/backbone.obscura
- A small Backbone.Collection plugin for composing the multi-page pagination component.
- https://github.com/seei/backbone.simple-paginator
Plugin for Backbone that makes it easy to manage nested views
- Project: https://github.com/NET-A-PORTER/backbone-assembler
- API: https://github.com/NET-A-PORTER/backbone-assembler#api
Data bind your models and collections to a Backbone.React.Component (a React.Component with some features borrowed from Backbone and Backbone.View)
- Components can be extended (just like Backbone.View)
- Components can receive either a model or a collection, both or many of them
- It relies on reactive updates through props instead of force updating the component
- $el and $ support like in Backbone.View
- Works on the server side by using toString method
- https://github.com/magalhas/backbone-react-component
A mini Backbone.js plugin to declare and set options on views.
- Use a simple declarative syntax to attach white-listed initialization options directly to your view objects.
- Optionally supply default values for options, and declare required options as such.
- https://github.com/rotundasoftware/backbone.viewOptions
Data binding for Backbone:
- computed model & view attributes & automated dependencies mapping
- declarative view bindings either in the view or in the template
- automatic view updates, with support for common filters
- extensible for custom requirements
Github: https://github.com/gmac/backbone.epoxy
- The plugin implements a two-way data binding between views and models/collections.
- https://github.com/DreamTheater/Backbone.DataBinding
Render Backbone.js collections with ease.
- In addition to managing model views, this class supports automatic selection of models in response to clicks, and reordering models via drag and drop.
- Project: http://rotundasoftware.github.io/backbone.collectionView
based on Closure Library's goog.ui.Component
- A layout and template manager for Backbone.js applications.
- Source: https://github.com/tbranyen/backbone.layoutmanager
- Docs: http://layoutmanager.org
An alternative Events implementation for the Backbone.View which provides events which bubble up through a view hierarchy while the latter is inferred from the DOM and the views' position in it.
- Installable via bower:
bower install backbone.viewevents
- Project: https://github.com/andreypopp/backbone.viewevents
Easily bubble events up your view hierarchy.
- Provides an intuitive message path through which views can communicate, free of explicit dependencies.
- Project: https://github.com/rotundasoftware/backbone.courier
A minimalist view mixin for creating and managing subviews in your Backbone.js applications.
- Use a clear and consistent syntax to insert subviews in your templates.
- Can be mixed into any view class, including the base views in Marionette, LayoutManager, etc.
- Project: https://github.com/rotundasoftware/backbone.subviews
- Simple nested views handling
view.appendView(".container", anotherview);
- Project: https://github.com/epeli/backbone.viewmaster
Model-View binding in Backbone style.
- JavaScript configuration - clean up your templates.
- Seamlessly integrates into the lifecycle and style of Backbone Views.
- Read More: http://nytimes.github.com/backbone.stickit/
- Source: https://github.com/NYTimes/backbone.stickit
- Data binding that's designed to feel familiar to Backbone users
- Examples: http://tantaman.github.com/yabbe/examples/YabbeViewExamples.html
- Project: https://github.com/tantaman/yabbe
-
Data binding between any object, bundled support for Backbone views, models, jQuery (and thus DOM elements or via CSS selectors), Zepto and plain objects (plain objects can only observe)
-
Use
new Synapse(object)
to return a Synapse object or leave off thenew
and it will return theobject
withobserve
,notify
andsync
methods for more transparent usage. -
Define your own hooks for custom behavior or to support other types of objects
- Minimal example: https://github.com/bruth/synapse/blob/master/src/synapse/hooks/object.coffee
- Robust example: https://github.com/bruth/synapse/blob/master/src/synapse/hooks/jquery.coffee
- Docs here: https://github.com/bruth/synapse/blob/master/src/synapse/hooks/README.md
- Register your hooks
Synapse.addHooks(hook1, hook2, hook3, ...)
-
Source: https://github.com/bruth/synapse
-
Docs & Examples: http://bruth.github.com/synapse/docs/
-
Interactive Demo: http://jsfiddle.net/bruth/bufeK/
Simple, flexible and powerful bidirectional view-model binding for backbone. A javascript only solution (no markup in html) that relies on jQuery delegates for binding. Similar to how backbone view event blocks work.
- Handles partial view binding, nested views, formatting, type conversion, arbitrary html attributes and most html element types.
- JS Weekly Article
- Git
Bi-directional bindings between Backbone.View elements and Backbone.Model attributes.
- Simple binding definitions like Backbone.View.events
- Bind to any element with by selector
- Bi-directional transformation
- Tested
- https://github.com/amccloud/backbone-bindings
Awesome model binding between models and form input elements, and more
- KnockoutJS-style
data-bind
attribute support - Bind form fields to models and vice-versa
- Convention based
- Pluggable with your own conventions
- Extensible to bind to more than just form input elements
Get the code and read the documentation:
Knockout bindings for Backbone.js models and collections.
-
includes localization hooks
-
integrates with Backbone.ModelRef (https://github.com/kmalakoff/backbone-modelref) for lazy loading scenarios
-
jsFiddle sample: http://jsfiddle.net/kmalakoff/QSkpv/
A little plugin for use in leanback apps, where someone is sat on the couch using a remote control to use your app.
- Simple use - keypad.bind("key:up", function(){//do something on up});
- Events can be triggered on anything that extends Backbone.Events
- Extensible to capture other key events
- http://tomphilip.me/index.php/backbone-on-the-couch/
Plugin that proxies jQuery/Zepto/$ functions for Backbone Views.
A small plugin that adds declarative model and collection event binding to Backbone Views.
- https://github.com/Codecademy/backbone.declarative
- Tested and passes all Backbone tests.
KnockoutJS-inspired declarative binding solution for Backbone Views.
- KnockoutJS-compatible binding handler API
- Explicit control over dependencies (e.g. cascading select boxes)
- Unobtrusive (i.e. code-based) and declarative (i.e. markup-based) configuration
- Multiple binding contexts for separating transient and persistent models.
- Tests, TodosMVC, and examples.
- https://github.com/politician/outback
Extension for automatic binding and unbinding of model events to views. It defines two special view attributes - bindToModel and bindToCollection. They are handled similar to events attribute, but instead of binding to dom events they bind to model/collection. Also this plugin takes care of cleaning events after the view is removed.
https://github.com/RStankov/backbone-bind-to
Make jQuery widgets/plugins from your Backbone Views.
- Create Backbone.Views with jQuery syntax:
$('.example').myView([options])
- http://meleyal.github.io/backbone.widget/
View management and transitions geared toward mobile applications.
- manage multiple views through a single "view port"
- create stacks of views and selectable lists of views
- transition between views (slide, fade, etc.)
- https://github.com/scttnlsn/backbone.viewkit
http://andreypopp.github.com/backbone.viewdsl/ or install via bower bower install backbone.viewdsl
Backbone.ViewDSL is a tiny library which provides a DSL for defining Backbone.View hierarchies. If you are tired of manually composing views in your Backbone application and want to get rid of all accompanying boilerplate then this library could help a bit.
Backbone.ViewDSL provides a DSL built on top of HTML with the following features:
- view instantiation (optionally loaded from AMD modules)
- conditional exclusion of DOM elements from a final result
- string and DOM node values interpolation
It is an extension for Backbone.View, which adds views management logic and structure. It's common for a view to have multiple subviews, but in Backbone.View managing subviews has to be done manually. This extension manages rendering a view and its subviews. When a view is removed, this extension also manages the subviews removal.
https://github.com/steverandy/backbone.managedview
Global notification mechanism for Backbone.
- Source: https://github.com/fatiherikli/backbone-notifications
- Demo: http://fatiherikli.github.com/backbone-notifications/
Monkey patch Backbone.View to enable fast tap events on touch devices.
https://github.com/nervetattoo/backbone.touch
Easily add keyboard support in your Backbone views
https://github.com/nervetattoo/backbone.keys
Backbone on steroids : super lightweight Backbone extension that provides boilerplates Views to write dramatically less code
Declare a chain of callbacks for a particular event declaration in the View
- this is a mixin, thus it simply extends the
Backbone.View
class you're already using - there's a Rails 3 gem for the mixin
- http://github.com/simsalabim/backbone.view.enhanced_events_declaration
- Elegant Backbone view hierarchy management and eventing
- https://github.com/steve8708/Backbone.ViewManager
- Enhance your Backbone views with stage management
- https://github.com/steve8708/Backbone.ViewModel
- Ember-inspired components: isolated view-like objects for typical UI elements
- Rails-inspired view helpers
- https://github.com/malroc/backbone-component
A rapid, bottom-up approach to developing Backbone views:
- Efficient and automatic view rendering. No need for a render method, views will automatically render based on the events you define.
- Custom two-way data binding. Easily tie a DOM element to a model attribute.
- Automatic sub-view management. Automatically handle add, remove, reset and sort events on a collection.
- The bottom-up, element-first approach greatly simplifies the design of most views
Documentation and Examples : http://smelnikov.github.io/kettle/
- Handle keypress events in Backbone views
- Suspend and resume hotkey handlers during the view's lifecycle
- https://github.com/panuru/backbone-hotkeys
- Controller definition and splitting routes by controllers
- https://github.com/artyomtrityak/backbone.controller
- https://github.com/juggy/backrub
- Uses Handlebars.js and Backbone.View to keep your template updated on the page. Based on Sproutcore TemplateView.
-
Backbone.*.super
,Backbone.*.create
— useful shortcuts for class/instances -
Backbone.Helpers.flatten
,Backbone.Helpers.unflatten
to work with nested objects (mostly for model nested attributes) - Source: https://github.com/fantactuka/backbone-ext
Provides a general purpose Event Broker implementation for Backbone based on the Backbone Events API.
jQuery style namespacing (http://docs.jquery.com/Namespaced_Events) of Backbone's Events object
Use delimited notation to reorganize the flat Backbone event stack into a nested hierarchy in order to allow easier implementation of grouped event actions.
Declarative event bindings for Backbone models, collections, subviews, and pub/sub.
A simple way to listen to global triggers in Backbone.js applications.
A semantic, easily stylable, light weight and yet extremely flexible set of widgets for building data grids.
- Source: https://github.com/wyuenho/backgrid
- Documentation: http://wyuenho.github.com/backgrid/
- Source: http://github.com/teleological/slickback
- Example: http://teleological.github.com/slickback
- Documentation: https://github.com/teleological/slickback/wiki
That's an extendable grid system (jqGrid like) developed on Backbone, Twitter Bootstrap and jQuery.
- Source: http://github.com/direct-fuel-injection/bbGrid
- Documentation && Examples: http://direct-fuel-injection.github.com/bbGrid
- Homepage: http://wiki.iks-project.eu/index.php/VIE
- Annotated Source: http://bergie.github.com/VIE/
Backbone.Aura is a decoupled, event-driven architecture on top of Backbone.js for developing widget-based applications
- Homepage: http://addyosmani.github.com/aura/
- Source: https://github.com/addyosmani/aura
This is not framework. It's just Backbone.js + Require.js + CoffeeScript application structure.
https://github.com/artyomtrityak/backbone-package-template
Backbone.Modal.js removes boilerplate code and adds default behaviors and interactions. You can create a simple dialog modal or complex wizards with stacked modals on top of each other in a few lines of code.
- Homepage: http://awkward.github.io/backbone.modal/
- Source: https://github.com/awkward/backbone.modal
- https://github.com/azicchetti/jquerymobile-router - a replacement for Backbone's routing, which is compatible with jQuery Mobile
- https://github.com/angelo0000/backbone_filters - provide Rails-like before & after filters on your Routers; especially useful for user access control
- https://github.com/boazsender/backbone.routefilter - Before and after filters for Backbone.Router. Similar idea to backbone_filters above, but takes a different approach, and has a different API.
- https://github.com/fantactuka/backbone-route-filter - Before/after filters for Backbone.Router including async filters support. Coupled with Backbone's test suite to make sure it does not break anything.
-
https://github.com/mojotech/backbone.routerFilters - Rails inspired before and after filters your routers. Can be controlled like Rails with
only
andexcept
. - https://github.com/chirag04/backbone-async-route-filter - Async Before/after filters for Backbone.Router for usecases like authenticate via ajax before any route executes.
- https://github.com/jhudson8/backbone-query-parameters - provides query parameter support to backbone routes; especially useful for routes with optional parameters. Traditional parameters can be used in conjunction with query parameters.
- https://github.com/kr1zmo/backbone-query-string - A lightweight extension of Backbone.Router that defines a constructor-function/sub-class that can be utilized separately not affecting Backbone.Router. It will supply a query-string object in route callbacks. Currently, supports AMD (requirejs).
- https://github.com/michael-lefebvre/Backbone-AppRouter - Extends Backbone.Router to find back a route pattern and construct an URL with arguments.
- https://github.com/tgriesser/backbone-multi-router - Allows multiple routers which each independently match a routes to the current url. Useful when you have separate features which may match different route patterns on the same history (e.g. one for layout, one for a site tour widget, one for analytics).
- https://github.com/pwhisenhunt/Backbonejs-Router-Title-Helper - Allows easy updates of the document title of your application based on your applications current route.
- https://github.com/tbranyen/backbone-boilerplate - A set of best practices and utilities for building Backbone.js applications
- https://github.com/jamuhl/backbone.CQRS - Backbone extension to provide CQRS integration down to clientside
- https://github.com/chaplinjs/chaplin - An opinionated, full-featured architecture framework for creating complex single-page applications with a strong emphasis on memory management and class heirarchies. Includes a powerful CollectionView class, rails-style routing with proper params hash, and controller patterns.
- https://github.com/barc/backbone.giraffe - Backbone.Giraffe is a light and flexible library that extends Backbone.js to new heights. Giraffe's goal is to follow the Backbone philosophy of unopinionated simplicity to provide commonly needed features with few assumptions. It takes a different approach to the problems of route handling, object lifecycles, event aggregation, and view management.
Make your BackboneJS apps dance with a composite application structure!
- Better application startup structure through application initializers
- Built in event aggregator, for convenient application level events
- RegionManagers to properly display / remove view instances, including memory leak cleanup
- Source: https://github.com/derickbailey/backbone.marionette
- Reference application: http://bbclonemail.heroku.com
- Provides mixin classes for a local collections (not stored on a server) and for mixing Backbone.Events into any class (including a check if they are mixed-in).
- Provides a facility to use Backbone.Events trigger('destroy') to do memory cleanup instead of a destroy method (event-based instance life-cycles).
- https://github.com/kmalakoff/mixin
- Not a JS loader like require.js, but a way to structure your code in big Backbone app projects.
- Load JS without worrying about load sequence and dependencies between modules.
- Source: https://github.com/juggy/backbone-module
- http://fahad19.github.com/singool/ - lightweight framework on top of Backbone for developing single-page web applications.
- https://github.com/dgreisen/Backbone-Traversal
- Quickly write single-page apps following a hierarchical design pattern.
- https://bitbucket.org/atlassian/backbone-brace
- http://blogs.atlassian.com/2012/11/add-some-strength-to-your-backbone/
- Models declare what attributes they expose, and all classes declare what events they expose
- Mixins allow mixing in methods / initializers / attributes / events to backbone classes
- Lightweight relational structure for creating cascading model / collection hierarchies
- Angular inspired live templates
- Ember inspired view hierarchy management and event bubbling
- Plugin architecture for maximum code reusability
- Web components and custom HTML tags for dead simple view hierarchy construction
- https://github.com/steve8708/base
- https://github.com/hegdeashwin/Nebula
- Nebula is an open source application skeleton for a typical Backbone web apps. You can use it to quickly bootstrap your Backbone web application projects.
- A simple plugin to give poll capabilities to backbone collections and models that uses a refresh rate to actively fetch data and keep the collection or model updated.
- https://github.com/pedrocatre/backbone-polling
- Homepage: http://lorenwest.github.com/backbone-callbacks
- Github: https://github.com/lorenwest/backbone-callbacks
- Works in the browser and in node.js (commonJS)
- Tiddlywiki-like client for managing topical content. MongoDB back end.
- Work in progress. Feedback welcome.
- https://github.com/mlanza/thingy-client
- Easily create Backbone models in unit tests.
- https://github.com/SupportBee/Backbone-Factory
- Make a finite-state machine out of any object.
- Backbone stateful views.
- https://github.com/sebpiq/backbone.statemachine
- Finite-state machine for Backbone Views and Models
- https://github.com/fragphace/backbone-fsm
- Simple, powerful state management for Backbone.js
- https://github.com/crashlytics/backbone.statemanager
- Declarative syntax for keyboard shortcuts on Views
- leverages Mousetrap
- https://github.com/elasticsales/backbone.mousetrap
- Defines and dispatches keyboard shortcuts
- leverages keymaster.js
- https://github.com/bry4n/backbone-shortcuts
- http://brunch.io - provides a powerful, rails-like directory structure and a powerful, extensible set of component generators (for working with Jade, handlebars, sass, less, stylus, etc.)
- Modifications to Backbone's Model an Collection so that they play nice with django-tastypie. Includes a way to easily paginate over a resource list and a way to access the associated meta information.
- https://github.com/amccloud/backbone-tastypie
- Errors are thrown when Backbone instance does not have all the required methods of the interface.
- Better organized code. Keep your interfaces separate, with comments - a well-documented reference point for the methods in your Models, Collections, Views, and Routers. (Not for production).
- https://github.com/luke-siedle/backbone-interface
- Aims to help with the cases when restul API is not an option.
- https://github.com/mkuklis/backbone.service
- A Backbone JS extension for interacting with the Google Maps API (v3.10)
- Bind Google Maps Markers and InfoWindow overlays to Backbone Models / Collections
- https://github.com/eschwartz/backbone.googlemaps
- Create Backbone plugin project templates with ease.
- https://github.com/gsamokovarov/grunt-init-backbone-plugin
- Helper to add HTTP Basic Authentication to every remote request.
- https://github.com/fiznool/backbone.basicauth
- An easy way to add svg/vml views into your Backbone app.
- https://github.com/tomasAlabes/backbone.raphael
- Indexes all Backbone plugins (from Github > package.json files) and you can search through them.
- http://backplug.io/
- Beamer is a "platform" for developing extensions for Backbone's prototypes (View, Model, Collection, Router). Its purpose is to ease hooking to backbone's prototypes methods - "initialize", "render" etc and make the extension easier for developers. Above All - Beamer is an Extension Manager - it's suppose to be the package manager of Backbone for plugins.
- https://github.com/orizens/Backbone.Beamer
- Flexible evented lists for Backbone
- https://github.com/steve8708/Backbone.List
- Ridiculously easy event binding for Backbone objects
- https://github.com/steve8708/Backbone.EasyBind
- A dead simple plugin architecture for Backbone
- https://github.com/steve8708/Backbone.Extended
- Role allows you to manage user access depending on his current roles and abilities map
- https://github.com/fantactuka/role
- Adds the ability to use the deferred pattern with models and collections when fetching, saving, or destroying
- Supports jQuery Deferred and Q Promises
- Backwards compatible to passing callbacks and provides same API across libraries.
- https://github.com/arhea/backbone-deferred
- Module system for Backbone.js.
- Make reuse and extend "Backbone.js Class" easy.
- https://github.com/hagiwaratakayuki/backbone-module
- ModalView - View which wraps a Bootstrap modal dialog
- FormView - View which displays a form and allows to edit a Model. Two-way bindings.
- http://amiliaapp.github.io/backbone-bootstrap-widgets/