Skip to content

argyleink/Bolt

Repository files navigation

Goal

Offer a fast, Grunt based, data driven malleable static build system. Use it for any project architecture that makes html/css/js.

Overview

This project seed is cache heavy, smart loading, and mobile first out of the box. Jade & Stylus are the preprocessor defaults, but swap it for whatever you want, no limits. Want more than 1 preprocessor, it's ready. Add tasks, take care of business.

Build Status Join the chat at https://gitter.im/argyleink/Bolt

Required

Optional (but handy)

Quickstart

  1. npm i -g bolt-cli: very small simple tool to install bolt into directories
  2. bolt new my_site: my_site should be replaced with your project name
  3. cd bolt-test && npm i: install bolt dependencies
  4. grunt: spin it up!
  5. See the Wiki

or

  1. npm i
  2. grunt

Build Features

  • Dev builds are extremely legible, source mapped, and ready for debugging with your tools grunt
  • Production builds squish the crap out [images,css,html,js,svg] grunt prod
  • Dev and Prod builds have their own output directory, they don't share a dist/ folder. No need for one build to squash the other.
  • Very fast, with a jit plugin for really fast task running
  • Concise Grunt main file
  • Grunt tasks are individual, short, easy as hell to read, and a breeze to create
  • DRY Configuration file keeps project assets and options centralized
  • BrowserSync dev server syncs all your clicks, scrolls, and more during development
  • BrowserSync live reload and hot css pushes for really rad fast front end crafting
  • BrowserSync Weinre remote inspect built in
  • Externally accessible server
  • Proper Jade inheritance compilation, so 1 file changed doesn't require the whole project to compile
  • Data driven front end development with YAML and/or JSON
  • Auto generated HTML5 appcache for production builds
  • Autoprefixed Stylus
  • Git tagging and releasing grunt bump
  • Easily create custom build notifications
  • Customize your crunched files comment banner
  • Ready to run custom shell commands
  • Image crunching
  • Sublime project file for easy project editing and standards establishment
  • CLI for easy setup of new projects bolt new my_app

Bolt Commands

  • grunt: dev server, no crunching, source maps, live reload, fast
  • grunt --dont-open: dev time, but don't open it in a browser for me
  • grunt prod: prod server, turbo crunching, no maps, ready to test before tagging or pushing
  • grunt compile: all the features of prod, but no server, just the crunched output
  • grunt serve --target=dev or grunt serve --target=prod: serve previous builds

Bolt Extras

Interesting Bolt Branches

  • koa: a server rendering seed
  • isomorphic: client side and static seed
  • remote-data: fetch remote data from an api and build a static site from it
  • webpack: webpack starter

Inspiration