1kb template engine for the browser and nodejs. Support helpers, partials and more. Used in AbsurdJS.
npm install octet> 1kb template engine for the browser and nodejs. Support helpers, partials and more.
Used in AbsurdJS Apps.
[![code climate][codeclimate-img]][codeclimate-url] [![standard code style][standard-img]][standard-url] [![travis build status][travis-img]][travis-url] [![coverage status][coveralls-img]][coveralls-url] [![dependency status][david-img]][david-url]
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.`js
var octet = require('octet')
var utils = require('utils')octet.render('foo <%this.uppercase("bar")%> baz', utils._)
//=> 'foo BAR baz'
`$3
> Acts like .render by default. Renders given str with locals.-
str {String} template to populate with locals
- locals {Object} locals object
- returns {String} rendered stringExample
`js
octet('foo <%this.bar%> baz <%this.quux%>', {bar: 'bar', quux: 'QUUX'})
//=> 'foo bar baz QUUX'
`$3
> Renders given str with locals.-
str {String} template to populate with locals
- locals {Object} locals object
- returns {String} rendered stringExample
`js
octet.render('Hello <%this.place%> and <%this.user.name%>!', {
place: 'world',
user: {
name: 'Charlike'
}
})
//=> 'Hello world and Charlike!'
`$3
> Compiles given string and returns function which accepts locals object.-
str {String} template to populate
- returns {Function} which accepts locals objectsExample
`js
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.[![tunnckocore.tk][author-www-img]][author-www-url] [![keybase tunnckocore][keybase-img]][keybase-url] [![tunnckoCore npm][author-npm-img]][author-npm-url] [![tunnckoCore twitter][author-twitter-img]][author-twitter-url] [![tunnckoCore github][author-github-img]][author-github-url]
[npmjs-url]: https://www.npmjs.com/package/octet
[npmjs-img]: https://img.shields.io/npm/v/octet.svg?label=octet
[license-url]: https://github.com/tunnckoCore/octet/blob/master/LICENSE.md
[license-img]: https://img.shields.io/badge/license-MIT-blue.svg
[codeclimate-url]: https://codeclimate.com/github/tunnckoCore/octet
[codeclimate-img]: https://img.shields.io/codeclimate/github/tunnckoCore/octet.svg
[travis-url]: https://travis-ci.org/tunnckoCore/octet
[travis-img]: https://img.shields.io/travis/tunnckoCore/octet.svg
[coveralls-url]: https://coveralls.io/r/tunnckoCore/octet
[coveralls-img]: https://img.shields.io/coveralls/tunnckoCore/octet.svg
[david-url]: https://david-dm.org/tunnckoCore/octet
[david-img]: https://img.shields.io/david/tunnckoCore/octet.svg
[standard-url]: https://github.com/feross/standard
[standard-img]: https://img.shields.io/badge/code%20style-standard-brightgreen.svg
[author-www-url]: http://www.tunnckocore.tk
[author-www-img]: https://img.shields.io/badge/www-tunnckocore.tk-fe7d37.svg
[keybase-url]: https://keybase.io/tunnckocore
[keybase-img]: https://img.shields.io/badge/keybase-tunnckocore-8a7967.svg
[author-npm-url]: https://www.npmjs.com/~tunnckocore
[author-npm-img]: https://img.shields.io/badge/npm-~tunnckocore-cb3837.svg
[author-twitter-url]: https://twitter.com/tunnckoCore
[author-twitter-img]: https://img.shields.io/badge/twitter-@tunnckoCore-55acee.svg
[author-github-url]: https://github.com/tunnckoCore
[author-github-img]: https://img.shields.io/badge/github-@tunnckoCore-4183c4.svg
[freenode-url]: http://webchat.freenode.net/?channels=charlike
[freenode-img]: https://img.shields.io/badge/freenode-%23charlike-5654a4.svg
[new-message-url]: https://github.com/tunnckoCore/ama
[new-message-img]: https://img.shields.io/badge/ask%20me-anything-green.svg