View rendering engine
JavaScript
Latest commit b7d0cb0 Oct 16, 2015 @rowanbeentje rowanbeentje v1.1.2
Permalink
Failed to load latest commit information.
docs rewrite module-interactions.md for mount Sep 11, 2015
examples Update docs and examples to change "data" to "model" Jul 2, 2013
lib ensure we don't accidentally mount on null Oct 15, 2015
test
.gitignore Instrumentation Jul 24, 2013
.npmignore Added ignore list to component.json and .npmignore Mar 8, 2013
.travis.yml
GruntFile.js First attempt to integrate coverage into coveralls Jul 24, 2013
History.md Fix dates May 23, 2013
LICENSE Make licensing notes consistent with FastClick Mar 29, 2014
README.md Update dependencies, update readme template, upgrade to the year 2014 Apr 14, 2015
package.json v1.1.2 Oct 16, 2015

README.md

FruitMachine Build Status Coverage Status Dependency Status

A lightweight component layout engine for client and server.

FruitMachine is designed to build rich interactive layouts from modular, reusable components. It's light and unopinionated so that it can be applied to almost any layout problem. FruitMachine is currently powering the FT Web App.

// Define a module
var Apple = fruitmachine.define({
  name: 'apple',
  template: function(){ return 'hello' }
});

// Create a module
var apple = new Apple();

// Render it
apple.render();

apple.el.outerHTML;
//=> <div class="apple">hello</div>

Installation

$ npm install fruitmachine

or

$ bower install fruitmachine

or

Download the pre-built version (~2k gzipped).

Examples

Documentation

Tests

With PhantomJS

$ npm install
$ npm test

Without PhantomJS

$ node_modules/.bin/buster-static

...then visit http://localhost:8282/ in browser

Author

Contributors

License

Copyright (c) 2014 The Financial Times Limited Licensed under the MIT license.

Credits and collaboration

The lead developer of FruitMachine is Wilson Page at FT Labs. All open source code released by FT Labs is licenced under the MIT licence. We welcome comments, feedback and suggestions. Please feel free to raise an issue or pull request.