A Marionette and backbone generator for Yeoman with Require and Dust templates.

Usage no npm install needed!

<script type="module">
  import generatorMaryo from '';


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