Introduction

asimov.js is at its core only two simple things: a command-line interface that loads and executes command scripts in your project and node_modules folder, and a plugin interface for adding initializers and extending the app lifecycle.

On its own, asimov.js doesn’t really do much — it leaves all the heavy lifting to plugins. The two most basic ones are asimov-server and asimov-static. Together you get an awesome static-site generator with extendable, chained processing and a high-performance clustered server, with Express-compatible middleware.

Every app is also a plugin.

That single idea is the keel of the framework. You compose a large application from small pieces, and each piece can be published to npm and reused by anyone else.

What you get

Install

Terminal window
npm install -g asimov
npm install --save asimov asimov-static

Then run any command via the CLI:

Terminal window
asimov # short for "asimov start", runs node index.js
asimov start # runs your bootstrap
asimov debug # same as start, but with VERBOSE=true
asimov loc # any command file in lib/commands/loc.js

How to read this guide

The chapters in the sidebar are arranged top-down: the higher chapters teach the building blocks (content, templates, helpers); the lower ones explain how to extend the framework (initializers, plugins, themes). The very last chapter is the public Changelog for the asimov npm package.