blaster
A router for generating a static site that can turn into a single page app.
example
var Router = var createElement = var fs = // Pass routes that return virtual nodes or HTMLvar router = { return } { } // Generate static pages to the ./dist folderrouter
Which will generate the HTML files:
./dist├── about.html└── index.html
From there you can bundle the same router above using whatever tooling you like. The static files get served and then the bundled client side code takes over routing.
See the example folder for a more in depth example.
api
var blaster = new Blaster([routes, options])
Creates a new instance of blaster
which inherits
base-router. Please check the docs
there for all available options and methods.
routes
- An object literal of routes to create.options
- An object literal to configure operation.
blaster.addRoute(name, model)
Adds a new route. name
is the pathname to our route and model
is a function
that resolves the data for the route.
router
blaster.generate([options])
Returns a stream of vinyl files for each route.
blaster.generateRoute(route[, options])
Returns a stream of a vinyl file for the given route
.
blaster.files(folder[, parseFile])
Indicates a folder
with static files to be included. Useful for dynamic
segments in routes such as /posts/:slug
.
parseFile
is an optional callback to parse the files as they stream:
router
license
(c) 2015 Kyle Robinson Young. MIT License