node package manager
Love JavaScript? Your insights can make it even better. Take the 2017 JavaScript Ecosystem Survey ยป


Generator Maryo

Build Status


Scaffold tool for Backbone and Marionette javascript projects.

The Name

A combination of Marionette and Yeoman (yo) to give Maryo, pronounced like Mario.

Getting started

  • Make sure you have yo installed: npm install -g yo
  • Install the generator locally: npm install generator-maryo
  • Run: yo maryo or yo


MIT License


  • Underscore precompilation with grunt (same as dust)
  • Models, Collections, Routers - Call backbone yeoman generator from within this generator
  • Customisable directory structure


In all generators, files will only be created if they don't already exist. The generator can be run interactively from the command line or by specifying a json file with a list of all your Marionette objects (config file to be completed).

The generator will give you the following libraries:

Libraries are delivered using Bower. If you need different versions, simply change them in bower.json and then run bower update.

The following files:

  • index.html
  • config.js (require config)
  • main.js (application start)
  • app.js (Marionette application object)
  • html5 boilerplate styles

The following directory structure:



Run as yo maryo:subgenerator. To generate backbone objects, use the yeoman backbone generator here.


yo maryo:controller controllerName

You get a Controller object

Item View

yo maryo:item-view itemViewName

What you get:

  • ItemView
  • ItemView template

Collection View

yo maryo:collection-view collectionViewName itemViewName

What you get:

  • CollectionView
  • ItemView
  • ItemView template

Composite View

yo maryo:composite-view compositeViewName itemViewName

What you get:

  • CompositeView
  • CompositeView template
  • ItemView
  • ItemView template


yo maryo:layout layoutName

What you get:

  • Layout
  • Layout template


yo maryo:region regionName

You get a region object.


yo maryo:router routerName

You get an AppRouter object