Awesome
octet
1kb template engine for the browser and nodejs. Support helpers, partials and more.
Used in AbsurdJS Apps.
Install
npm i octet --save
Features
- minimal, yet simple
- 845 bytes - browserified, gzipped and minified
- 1676 bytes - browserified and minified
- zero dependencies
- works on every browser, should even works on IE6 or at least IE8
- works on the server with just
require('octet')
- plays well with Browserify and BrowserifyCDN
- support helpers and partials
- available on CDNs - BrowserifyCDN and RawGit CDN
Use it
- dist/octet.min.js (1.6kb)
- dist/octet.standalone.min.js (1.9kb)
- octet on BrowserifyCDN
- octet on RawGit CDN
Usage
For more use-cases see the tests.
You can use any "helpers" lib, for example utils.
var octet = require('octet')
var utils = require('utils')
octet.render('foo <%this.uppercase("bar")%> baz', utils._)
//=> 'foo BAR baz'
octet
Acts like
.render
by default. Renders givenstr
withlocals
.
str
{String} template to populate withlocals
locals
{Object} locals objectreturns
{String} rendered string
Example
octet('foo <%this.bar%> baz <%this.quux%>', {bar: 'bar', quux: 'QUUX'})
//=> 'foo bar baz QUUX'
.render
Renders given
str
withlocals
.
str
{String} template to populate withlocals
locals
{Object} locals objectreturns
{String} rendered string
Example
octet.render('Hello <%this.place%> and <%this.user.name%>!', {
place: 'world',
user: {
name: 'Charlike'
}
})
//=> 'Hello world and Charlike!'
.compile
Compiles given string and returns function which accepts
locals
object.
str
{String} template to populatereturns
{Function} which acceptslocals
objects
Example
var fn = octet.compile('Hello <%this.place%> and <%this.user.name%>!')
fn({place: 'world', user: {name: 'Charlike'}})
//=> 'Hello world and Charlike!'
Related
- j140: Template engine in 140 bytes, by @jed Schmidt. Support helpers, partials and more.
- es6-template: Easy and small template engine for the browser and nodejs.
- es6-template-regex: Regular expression for matching es6 template delimiters in a string.
- es6-template-strings: Compile and resolve template strings notation as specified in ES6
- gulp-j140: Gulp plugin for
j140
- template engine in 140 bytes by @jed Schmidt. - gulp-octet: Gulp plugin for
octet
- template engine in just 20 lines - used in AbsurdJS. - gulp-es6-template: Gulp plugin for
es6-template
- easy and small template engine. - gulp-es6-template-strings: Gulp plugin for
es6-template-strings
package. - jstransformer-es6-template: es6-template support for JSTransformers
- jstransformer-es6-template-strings: es6-template-strings support for JSTransformers
- jstransformer-octet: octet support for JSTransformers
- jstransformer-j140: j140 support for JSTransformers
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
But before doing anything, please read the CONTRIBUTING.md guidelines.