Project setup with:
- Mithril 2.x
- Rollup for optimized module bundles
- Babel for transpiling es2015 to es5
A couple of styles are included using Tachyon, but these can simply be replaced with your own CSS solution.
Install dependencies
npm install
Script commands defined in package.json
:
build
: creates a minified bundle indist/js/
serve
: serves the build directory at localhost:5000dev
: starts a local webserver; creates a bundle indist/js/
that is being updated with each code change; calls LiveReload to refresh the browser after code changes are built
Call npm run dev
and open a web page at localhost:3000. The port number is set by environment variable PORT
in package.json
.
When making changes, the terminal will show lint errors, if any.
scripts
contains a couple of Rollup configuration files. The scripts use rollup.base.js
as base configuration.
FYI, the base configuration:
- Exports
createConfig({ includeDepencies })
- Reads
package.json
to read package dependencies. IfincludeDepencies
istrue
, it will include those dependencies in the build file - Creates global package names; and sets global
m
for package "mithril".
rollup.es.js
: Builds an ES2015 module with syntax features that node supportsrollup.umd.js
: Builds a UMD bundlerollup.watch.js
: Builds a UMD bundle that is updated with each file change
Optional environment variables:
DEPS
(Number 0 or 1): include dependenciesWATCH_DIR
(String): sets the watch directory when running thedev
scriptPORT
(Number): sets the http server port when running thedev
script
Other configuration file:
.babelrc
: Babel configuration
MIT