CLI

A command line interface for bootstrapping and working with Wonderful's Static Kit library.

What is it?

Static CLI is a command line interface for bootstrapping and working with Wonderful’s Static Kit library.

Usage

Static CLI helps developers create, compile, and manage static resources (specifically Javascript, CSS (SCSS), and images) for websites. It does this by interacting with a Static Kit library installation which contains both source and distribution versions of each file.

For instance, if a Static Kit library was installed in a directory named static, compiling all source Javascript, CSS, and Images into distributable files is as easy as running static compile all.

Installation

Please make sure your environment meets the minimum requirements:

  • Node 12 or later

Install globally using npm:

$ npm install -g @wndrfl/static-kit-cli

If the Static CLI was successfully installed, you should be able to check its version:

$ static -v
Static CLI 2.6.4

Credits

The Static CLI does not claim to be a proprietary bundler or compiler. In fact, it aims to stay completely out of the way of the actual bundling process, and instead serve as a convenience tool to help manage the complex choreography required manage various third-party development tools in a typical web environment.

Under the hood, Static CLI deeply leverages various third-party tools according to their strengths to bring the most value to the development workflow. Several of the most influential third-party dependencies are:

  • esbuild – An extremely fast JavaScript bundler
  • Dart Sass – The primary, highly-optimized compiler for the Sass language
  • sharp – High performance Node.js image processing
  • chokidar – Minimal and efficient cross-platform file watching library
  • mustache.js – A zero-dependency implementation of the mustache template system in JavaScript

Support

The Static CLI has been tested on the following tools. Please let us know if how it works in your environment!

  • Mac OS:
    • Terminal.app
    • iTerm
  • Windows:
    • (needs testing, please let us know how it works!)
  • Linux:
    • (needs testing, please let us know how it works!)