Awesome
base16-builder-node <img alt="Color wheel" src="./color_wheel.png" width="100" align="right" style="padding-top:0.6rem;">
<!-- ![build and CI status](https://badgen.net/github/checks/joshgoebel/base16-builder-node/main?label=build) --> <!-- [![code quality](https://badgen.net/lgtm/grade/g/joshgoebel/base16-builder-node/js?label=code+quality)](https://lgtm.com/projects/g/joshgoebel/base16-builder-node/?mode=list) -->A builder for schemes and templates based on clear, universal style specifications. The output is app specific theming configurations. Build a color scheme once, use it everywhere.
Features
- Supports both
base16
andbase24
style specs (with more to come)- Chris's original Base16 v0.2 styling spec
- Base24 (5625d94) styling spec
- Conforms to the Builder v0.10.1 spec
- Builds all installed templates/schemes in one quick pass
What is a style specification?
A specification details palette architecture and how it should be used for rendering application UI or syntax highlighting. Real life implementations of a style specification typically include a color scheme and app templates.
Supported specifications
- Base16 - an architecture of carefully chosen syntax highlighting using a base of just sixteen colors.
- Base24 - Base16 plus an additional 8 colors to allow using all 16 ANSI colors in the terminal.
Install
npm install -g base16-builder-node
This package provides a base16
console command. Invoke it from any directory you want to build your themes, templates, and schemes in.
Basic Usage - Base16 example
Your working directory will need the following substructure:
base16/schemes
base16/templates
cd working_dir
mkdir -p base16/templates && cd base16
git clone https://github.com/tinted-theming/base16-schemes.git schemes
cd templates
git clone [your template of choice]
git clone [another template of choice]
cd ../..
base16 build base16 --prefix base16-
Builds all templates found in base16/templates
using all scheme files from base16/schemes
applying the base16-
prefix to each.
Build Assets
The theme files will be generated inside every template directory in the subdirectory specified by that template's configuration.
For example: textmate
. The built files would be found at:
./templates/textmate/Themes
,
If you are a template maintainer
The easiest thing is to simply maintain your template repository inside your base16-build working folder (or symlink it).
You could facilitate this easily (from inside your template dir) with a tiny build script, etc:
#!/bin/bash
cd ../../..
base16 build
Credit where it's due
Color wheel icon thanks to Color icons created by Nikita Golubev - Flaticon.