1.6.3 • Published 1 year ago

xhtm v1.6.3

Weekly downloads
2
License
MIT
Repository
github
Last release
1 year ago

XHTM − eXtended HTM Tagged Markup

XHTM is alternative implementation of HTM without HTM-specific limitations. Low-level machinery is rejected in favor of readability and better HTML support.

Differences from HTM

  • Self-closing tags support htm`<input><br>`[h('input'), h('br')].
  • HTML directives <!doctype>, <?xml?> etc. support #91.
  • Optionally closed tags support <p>foo<p>bar<p>foo</p><p>bar</p> #91.
  • Interpolated props are exposed as arrays html`<a class="a ${b} c"/>`h('a', { class: ['a ', b, ' c'] }).
  • Calculated tag names #109 support.
  • Ignoring null-like arguments (customizable) #129.
  • Spaces formatting closer to HTML; elements with preserved formatting (#23).
  • No integrations exported, no babel compilers.
  • No cache.

Installation & Usage

NPM

xhtm is by default fully compatible with htm and can be used as drop-in replacement.

import htm from 'xhtm'
import { render, h } from 'preact'

html = htm.bind(h)

render(html`
  <h1>Hello World!</h1>
  <p>Some paragraph<br>
  <p>Another paragraph
`, document.getElementById('app'))

For htm manual, refer to htm docs.

Justification

Originally that was just state of art HTML parser implementation ( ~60LOC, best from 10 variants in R&D branches), but turned out it has ideal qualities for spect/h (tiny size, no cache, HTML support, extensibility).

1.5.5

1 year ago

1.6.3

1 year ago

1.5.4

1 year ago

1.6.2

1 year ago

1.6.1

1 year ago

1.6.0

1 year ago

1.5.10

1 year ago

1.5.12

1 year ago

1.5.11

1 year ago

1.5.14

1 year ago

1.5.13

1 year ago

1.5.15

1 year ago

1.5.9

1 year ago

1.5.8

1 year ago

1.5.7

1 year ago

1.5.6

1 year ago

1.5.3

4 years ago

1.5.2

4 years ago

1.5.1

4 years ago

1.5.0

4 years ago

1.4.0

4 years ago

1.3.0

4 years ago

1.2.1

4 years ago

1.2.0

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago

0.0.5

4 years ago

0.0.3

4 years ago

0.0.4

4 years ago

0.0.1

4 years ago