Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Handlebars templates for CLIs
JavaScript
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
templates
.gitignore
README.md
index.js
package.json
test.js

README.md

stashed

Handlebars templates for CLIs! Now you can groom your stash on the command line too. Now with colors!

If you're building a CLI and want to keep the nasty string manipulations out your well crafted code, use this.

Usage

First add stashed to your deps or install manually:

npm i stashed

Next:

var stashed = require('stashed');
var render = stashed({
  templateDir: "./templates"
});

console.log(render('basics'));

console.log(render('with_binds',{
  answer: "two",
  name: "Rich"
}));

Inside ./templates/basics.hbs, you'll find:

{{#rainbow}}Skittles, taste the rainbow{{/rainbow}}

Which will render this in your terminal:

Rainbows!

Inside ./templates/with_binds.hbs, you'll find:

This template has some binds:

  1 + 1 = {{answer}}

Hello {{#inverse}}{{name}}{{/inverse}}!

This will render:

Binds

Options

render( <String::filename_of_template_wo_ext>, 
        [Object::context_object],
        [Boolean::strip_colors] )

Supported colors and styles

Stashed uses @marak's awesome colors.js. Stashed exposes colors.js' colors and styles as Handlebars block helpers:

  • bold
  • underline
  • italic
  • inverse
  • grey
  • black
  • yellow
  • red
  • green
  • blue
  • white
  • cyan
  • magenta
  • rainbow
  • zebra
  • zalgo

To use these, all you have to do is wrap your text with {{#style}}text{{/style}}. You can nest styles too.

Contribute

Go nuts, but don't forget to send me some pull requests!

Something went wrong with that request. Please try again.