Marionette.Toolkit is a collection of opinionated extensions for Marionette Each element helps to reduce boilerplate for complex large scale application problems. This toolkit was built from scripts open sourced from RoundingWell.com.
App - An extension of Marionette.Application
. Its purpose is to provide an object with a initialize
/start
/stop
/destroy
lifecycle.
Component - An extension of Marionette.Application
. Provides a consistent interface for which to package state-view-logic.
Async App start - How to easily start apps asynchronously.
StateMixin - JavaScript Object with a Backbone.Model
for keeping state. Used by both the App and Component but can be applied to any Marionette Class.
ChildAppsMixin - Functionality to add or remove child Apps to a parent App, start apps asynchronously, and connect the child App lifecycle with the parent App lifecycle.
EventListenersMixin - Binds events to the App
while running and removed (and only those) when the App
is stopped.
ViewEventsMixin - Adds Marionette.View
-like support for view event proxying. The API is analogous to childViewEventPrefix
, childViewEvents
and childViewTriggers
.
If you have questions or concerns please feel free to open an issue. Additionally join us on the Marionette Gitter to have a chat. Everyone there is happy to discuss design patterns.
You can download the latest builds directly from the dist folder above.
Via yarn
$ yarn add marionette.toolkit
Via npm
$ npm install marionette.toolkit
Currently Marionette.Toolkit is available via npm and bower. If you would like add it to another channel, please open an issue.
For change logs and release notes, see the changelog file.
Marionette.Toolkit currently requires and is tested with Marionette 3.0.0+ as it extends
Marionette.Application
Marionette.Toolkit supports IE10+ and modern browsers.
If you would like to contribute to Marionette.Toolkit'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.
You can also join us in the Marionette Toolkit Gitter to think up new features, report bugs, ask questions, and talk design patterns within Toolkit.
Report issues with Marionette.Toolkit, and submit pull requests to fix problems or to create summarized and documented feature requests (preferably with the feature implemented in the pull request).
===
This library is © 2019 RoundingWell. Distributed under MIT license.