hyposcript
hyposcript copied to clipboard
Tiny hyperscript made for server rendering.
hyposcript
Hyper minimal hyperscript for server rendering.
npm i hyposcript
Usage
Hyposcript has essentially the same API as hyperscript or React.createElement, so it should feel familiar.
The difference is: no DOM, only strings.
const { h } = require('hyposcript')
h('button', { class: 'btn' }, 'Click me!')
// => <button class="btn">Click me!</button>
JSX
To use with JSX you'll need to transpile or use a runtime.
For example, if you're using babel, your config should probably look something
link this:
{
"presets": [
[
"@babel/preset-react",
{
"pragma": "h",
"pragmaFrag": "h"
}
]
]
}
Benchmarks
Since hyposcript is basically just concatenating strings, benchmark
comparisons with hyperscript or react are not really fair. And though
vhtml and hyposcript are essentially the same, hyposcript does not escape
HTML strings for you (be safe out there). Even so, there's a simple benchmark
here for general reference. These were run on an 2.4 GHz 8-Core Intel Core i9
MacBook Pro.
hyperscript x 27,932 ops/sec ±2.08% (89 runs sampled)
react x 43,261 ops/sec ±0.63% (94 runs sampled)
vhtml x 168,688 ops/sec ±0.67% (91 runs sampled)
hyposcript x 444,603 ops/sec ±1.07% (89 runs sampled)
License
MIT License © Sure Thing