Giter Club home page Giter Club logo

backbone.marionette's Introduction

Backbone.Marionette

The Backbone framework

Coverage Status

About Marionette

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 applications.

Documentation

All of the documentation for Marionette can be found at

App Architecture On Backbone's Building Blocks

Backbone provides a great set of building blocks for our JavaScript applications. It gives us the core constructs that are needed to build small apps, organize jQuery DOM events, or create single page apps that support mobile devices and large scale enterprise needs. But Backbone is not a complete framework. It's a set of building blocks. It leaves much of the application design, architecture and scalability to the developer, including memory management, view management, and more.

Marionette brings an application architecture to Backbone, along with built in view management and memory management. It's designed to be a lightweight and flexible library of tools that sits on top of Backbone, providing the framework for building a scalable application.

Like Backbone itself, you're not required to use all of Marionette just because you want to use some of it. You can pick and choose which features you want to use. This allows you to work with other Backbone frameworks and plugins easily. It also means that you are not required to engage in an all-or-nothing migration to begin using Marionette.

Chat with us

Find us on gitter or on IRC in the FreeNode.net #marionette channel.

We're happy to discuss design patterns and learn how you're using Marionette.

Key Benefits

  • Scalable: applications are built in modules, and with event-driven architecture
  • Sensible defaults: Underscore templates are used for view rendering
  • Easily modifiable: make it work with your application'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 the Region and LayoutView objects
  • Nested views and layouts within visual regions
  • Built-in memory management and zombie-killing in views, regions and layoutViews
  • Event-driven architecture with Backbone.Wreqr.EventAggregator
  • Flexible, "as-needed" architecture allowing you to pick and choose what you need
  • And much, much more

Source Code and Downloads

You can download the latest builds directly from the "lib" folder above. For more information about the files in this folder, or to obtain an archive containing all Marionette dependencies (including Underscore, Backbone, etc.), please visit the downloads section on the website.

Available Packages

Marionette is available via bower, npm, and component.io. There are other channels that are maintained by the community.

Release Notes And Upgrade Guide

Changelog: For change logs and release notes, see the changelog file.

Upgrade Guide: Be sure to read the upgrade guide for information on upgrading to the latest version of Marionette.

Annotated Source Code

The source code for Marionette is heavily documented. You can read the annotations for all the details of how Marionette works, and advice on which methods to override.

Compatibility and Requirements

MarionetteJS currently works with the following libraries:

Marionette has not been tested against any other versions of these libraries. You may or may not have success if you use a version other than what is listed here.

How to Contribute

If you would like to contribute to Marionette's source code, please read the guidelines for pull requests and contributions. Following these guidelines will help make your contributions easier to bring into the next release.

Report issues with Marionette, submit pull requests to fix problems, or to create summarized and documented feature requests (preferably with pull requests that implement the feature).

backbone.marionette's People

Contributors

samccone avatar jamesplease avatar jasonlaster avatar jamiebuilds avatar ahumphreys87 avatar jfairbank avatar cobbweb avatar jsoverson avatar oatkiller avatar yethee avatar jdaudier avatar paulfalgout avatar dmytroyarmak avatar clemens-panda avatar cmaher avatar jonotron avatar fantactuka avatar mbriggs avatar andrewhubbs avatar ifeins avatar jgornick avatar osama-lionheart avatar rhubarbselleven avatar existentialism avatar tony avatar stephanebachelier avatar paulovieira avatar paulyoung avatar theredcoder avatar julik avatar

Watchers

 avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.