Skip to content

bredele/supplant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Supplant

Build Status

Variable substitution/interpolation on string. Look for expressions enclosed in {{ }} braces and substitutes its value with data.

Built for brick and datastore. Supplant is agnostic and can be used as a standalone template engine on both client and server sides. For example, supplant is used by marc to make markdown a dynamic template engine.

Installation

with component:

$ component install bredele/supplant

with nodejs:

$ npm install supplant

API

var Supplant = require('supplant');
var subs = new Supplant();

supplant.text(str, obj)

return the interpolation of a string with an object.

subs.text('my name is {{ name }}', {
  name : 'Olivier',
});

// = > my name is Olivier

supplant.props(str)

return uniq identifiers

subs.props('hello {{ name }} and {{other}}');
// => ['name', 'other']

Advanced

Expressions

subs.text('{{ company.toUpperCase() }}', {
  company : 'github'
});

//GITHUB

supplant supports grouping, binary operators, identifiers, comparators and ternary operators (see test).

Filters

subs.filter('hello', function(str) {
  return 'hello ' + str;
});
subs.text('{{ company} | hello}', {
  company : 'github'
});

// => hello github 

License

MIT

About

Variable substitution on string

Resources

Stars

Watchers

Forks

Packages

No packages published