0.0.8 • Published 10 years ago
fractaljs v0.0.8
Fractaljs
Bundle javascript modules + lazy load in browser
// app.js
//= require_fractal
//= require ./jquery.js
//= require ./submodule.js module
//= reference ./lazy_loaded_bundle.js
exports.f = function () { return 'app'; };
// submodule.js
module.exports = 'submodule';
// lazy_loaded_bundle.js
//= require ./react.js module
<script src="/assets/app.js"></script>
<script>
var submodule = require('submodule.js'); // require synchonously
console.log(submodule) // => 'submodule'
use('./react.js', function() { // load 'lazy_loaded_bundle.js' first
var react = require('./react.js'); // then require module when it's available
});
</script>
Express middleware
var fractal = require('fractaljs');
fractal.config().assetPath = path.resolve(__dirname, './client');
app.use('/assets/*', fractal.middleware);
development
make install && make dev
run all tests
make test
watch mocha test
make watch_mocha
run karma tests
brew install phantomjs
make karma
Features TODO
- Q => ES-6 Promises
- get rid of mutable config
- bulding bundles for prod