node package manager


an opinionated static build tool, powered by webpack


An opinionated static build tool, powered by webpack

We ❤️ static.

If you're building a website or client-side app – then 🌵 spike is probably for you. Spike aims to be simple, efficient, and a pleasure to use.

Spike certainly is not the only static site generator out there, but in our opinion, it's the most powerful and easiest to use.

Spike is from the same team that brought you Roots. The thinking behind moving past Roots is explained in this article. Please feel free to comment and contribute.

Spike is fairly strict in enforcing a default stack. However, the stack allows for quite a large amount of flexibility as both the css and js parsers are able to accept plugins. Also spike's core compiler is Webpack, so you can customize your project with loaders and plugins. The inflexibility of the stack means faster compiles and better stability. We use...

  • Easy configuration via the app.js file
  • Integration with Webpack's massive plugin/loader ecosystem
  • Support for ES6 in your site's JS via Babel
  • Breezy local development powered by Browsersync
  • Turn-key isomorphism (no refresh page loads)
  • Selective compile in watch mode ⚡
  • Support for multiple environments
  • Interactive Project Starters via sprout
  • Spike Plugins for common integrations

NOTE: You must be using >= node v6.0.0 in order for Spike to work!

  • npm install spike -g
  • spike new <projectname>

Spike can operate through either a javascript API or a CLI interface. This project is just the command line interface, for more information on the js api, check out spike-core.

To read all about how spike works, check out our documentation

For information on how to use the command line interface, check the CLI section