No description
  • Go 98.9%
  • HTML 0.7%
  • Makefile 0.4%
Find a file
Snider cb283e00a2
Some checks failed
Security Scan / security (push) Has been cancelled
Test / test (push) Has been cancelled
chore(repo): canonicalize — add .core/go.yaml + scope .gitignore to runtime subdirs
The .core/ root holds tracked Lethean canon config (go.yaml, build.yaml,
agents.yaml, etc.). Only the runtime subdirs (workspace/, vm/, cache/,
runtime/) and per-repo runtime artifacts should be gitignored.

Brings this repo into the managed canonical set per audit-sweep
discovery filter.

Co-Authored-By: Cladius Maximus <cladius@lethean.io>
2026-05-01 11:23:53 +01:00
.core chore(repo): canonicalize — add .core/go.yaml + scope .gitignore to runtime subdirs 2026-05-01 11:23:53 +01:00
.forgejo/workflows fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
.github/workflows fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
docs refactor(go): restructure to /go/ subtree + audit COMPLIANT (Mantis #1234) 2026-05-01 01:30:59 +01:00
go refactor(go): restructure to /go/ subtree + audit COMPLIANT (Mantis #1234) 2026-05-01 01:30:59 +01:00
specs fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
tests/cli/html feat(ax-10): bring go-html to v0.8.0-alpha.1 + CLI test scaffold 2026-04-24 23:40:00 +01:00
.editorconfig fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
.gitignore chore(repo): canonicalize — add .core/go.yaml + scope .gitignore to runtime subdirs 2026-05-01 11:23:53 +01:00
.golangci.yml fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
.woodpecker.yml ci: woodpecker pipeline (Go) — golangci-lint/eslint/phpstan + sonar.lthn.sh 2026-04-29 00:03:06 +01:00
AGENTS.md refactor(core): align go-html with v0.9.1 hardened core/go reference shape 2026-04-29 04:28:25 +01:00
CLAUDE.md fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
CONTRIBUTING.md fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
go.work refactor(go): restructure to /go/ subtree + audit COMPLIANT (Mantis #1234) 2026-05-01 01:30:59 +01:00
LICENCE chore: add EUPL-1.2 LICENCE file (UK English canonical) 2026-05-01 08:34:09 +01:00
Makefile fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
README.md fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
SESSION-BRIEF.md fix(html): restore full tree and stabilize nested layout block ids 2026-04-15 03:11:36 +01:00
sonar-project.properties ci: woodpecker pipeline (Go) — golangci-lint/eslint/phpstan + sonar.lthn.sh 2026-04-28 23:33:22 +01:00
Taskfile.yaml feat(go-html/api+wasm): scaffold provider + WASM build target (#1019) 2026-04-25 21:45:26 +01:00

Go Reference License: EUPL-1.2 Go Version

go-html

HLCRF DOM compositor with grammar pipeline integration for server-side HTML generation and optional WASM client rendering. Provides a type-safe node tree (El, Text, Raw, If, Each, Switch, Entitled, AriaLabel, AltText, TabIndex, AutoFocus, Role), a five-slot Header/Left/Content/Right/Footer layout compositor with deterministic data-block path IDs and ARIA roles, a responsive multi-variant wrapper, a server-side grammar pipeline (StripTags, GrammarImprint via go-i18n reversal, CompareVariants), a build-time Web Component codegen CLI with optional TypeScript declarations, and a WASM module (2.90 MB raw, 842 KB gzip) exposing renderToString().

Module: dappco.re/go/core/html Licence: EUPL-1.2 Language: Go 1.26

Quick Start

import html "dappco.re/go/core/html"

page := html.NewLayout("HCF").
    H(html.El("nav", html.Text("i18n.label.navigation"))).
    C(html.El("main",
        html.El("h1", html.Text("i18n.label.welcome")),
        html.Each(items, func(item Item) html.Node {
            return html.El("li", html.Text(item.Name))
        }),
    )).
    F(html.El("footer", html.Text("i18n.label.copyright")))

rendered := page.Render(html.NewContext("en-GB"))

Documentation

  • Architecture — node interface, HLCRF layout, responsive compositor, grammar pipeline, WASM module, codegen CLI
  • Development Guide — building, testing, WASM build, server/client split rules
  • Project History — completed phases and known limitations

Build & Test

go test ./...
go test -bench . ./...
GOOS=js GOARCH=wasm go build -ldflags="-s -w" -o gohtml.wasm ./cmd/wasm/
go build ./...

Licence

European Union Public Licence 1.2 — see LICENCE for details.