Skip to content
forked from choojs/nanohtml

🐉 A simple library for composable DOM elements using tagged template strings.

Notifications You must be signed in to change notification settings

Tram-One/nanohtml

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@tram-one/nanohtml

Fork of a simple library for composable DOM elements using tagged template strings.

nanohtml is a library for translating template strings into DOM elements on the server and on the client.

Example

nanohtml can be used with other libraries (like hyperx) to create DOM trees.

const nano = require('nanohtml')
const hyperx = require('hyperx')

const html = hyperx(nano(), {comments: true})
const div = html`
  <div>
    <h1>This is in a DOM tree</h1>
  </div>
`

Namespaces

You can pass in a namespace to properly create namespaced elements (like svg)

const nano = require('nanohtml')
const hyperx = require('hyperx')

const svg = hyperx(nano('http://www.w3.org/2000/svg'), {comments: true})
const div = svg`
  <svg height="200" width="200">
    <rect width="100" height="100" />
  </svg>
`

You can use the nanohtml.html and nanohtml.svg instead of calling the top-level function

const nano = require('nanohtml')
const hyperx = require('hyperx')

const svg = hyperx(nano.svg, {comments: true})
const div = svg`
  <svg height="200" width="200">
    <rect width="100" height="100" />
  </svg>
`

original license

(c) 2016 Kyle Robinson Young. MIT License

About

🐉 A simple library for composable DOM elements using tagged template strings.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%