Skip to content
/ jigs Public

A front-end build CLI tailored to my preferred stack

Notifications You must be signed in to change notification settings

mrhubbs/jigs

Repository files navigation

🚧 This is an experimental project in early development. 🚧

In carpentry, a jig is a thing you make to help you make the thing you're making. One example would be a frame or clamp setup to help cut wood consistently. As such, a jig empowers efficient craftsmanship.

Jigs is a CLI program to build static sites, PWAs and Electron apps. It's tailored to my preferred front-end stack:

Why?

That's a kind of a long story… Part of it is that I got sick of installing the same build tooling on my system, over-and-over, and I got sick of maintaining it in different projects, over-and-over.

Jigs is installed globally and can build a variety of projects. Simpler projects won't even need a node_modules folder.

I'm experimenting to see just how far I can take this. It could get sticky if some projects require different versions of dependencies than the ones built into the current version of Jigs. However, the way Jigs sets up pathing, any modules installed into a project will override those installed in Jigs.

Installation

Linux/Mac only, Windows support comming…

# clone this repo to your machine
npm i --production
npm run build
./install-jigs

Development

watch mode

cd project-directory
jigs
# or
jigs dev

Building

production mode

cd project-directory
jigs build

Project Scaffolding

cd project-directory
jigs init

To-Do

  1. Code errors are being logged twice?

  2. Try MDX's vue-loader.

  3. Not returning exit code in launch.js

  4. Figure out how to embed source-code highlighting styles.

  5. Document jigs.config.js

  6. Document jigs init

  7. Document everything

About

A front-end build CLI tailored to my preferred stack

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published