feat(html): add @choojs/html — server renderer, raw(), morph

ESM ports with attribution: nanohtml 1.10.0 server tag (browserify/babel
transform branches removed — pure runtime), raw-server, and nanomorph 5.4.3
consolidated into one module. browser.js is a Phase 2 placeholder that
throws loudly. Covered by test/server.test.js on node:test.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014NgfSjHE11oFpoSnLVKLXd
This commit is contained in:
Bendik Aagaard Lynghaug
2026-09-08 15:59:26 +02:00
co-authored by Claude Fable 5
parent 3d6b474621
commit 90cca611c9
6 changed files with 520 additions and 0 deletions
+31
View File
@@ -0,0 +1,31 @@
{
"name": "@choojs/html",
"version": "8.0.0-dev",
"description": "HTML template literals that render to DOM in the browser and strings on the server",
"type": "module",
"exports": {
".": {
"browser": "./browser.js",
"default": "./server.js"
},
"./raw": "./raw.js",
"./morph": "./morph.js"
},
"files": [
"browser.js",
"server.js",
"raw.js",
"morph.js"
],
"engines": {
"node": ">=24"
},
"repository": "choojs/choo",
"keywords": [
"html",
"template",
"tagged-template",
"server-side-rendering"
],
"license": "MIT"
}