feat(web): SPA skeleton embedded in the binary #60

Merged
naps62-yolo merged 5 commits from issue/6-web-skeleton into main 2026-08-22 21:07:40 +01:00

5 Commits

Author SHA1 Message Date
Miguel Palhas 5dd5a25873 Merge remote-tracking branch 'origin/main' into issue/6-web-skeleton
ci / rust (pull_request) Successful in 1m45s
ci / web (pull_request) Successful in 43s
e2e / e2e (pull_request) Successful in 1m8s
# Conflicts:
#	crates/arr-daemon/src/main.rs
2026-08-22 21:01:11 +01:00
Miguel Palhas 1b64afc2a1 fix(ci): prepare the pinned pnpm version via corepack
ci / rust (pull_request) Successful in 1m54s
ci / web (pull_request) Successful in 42s
e2e / e2e (pull_request) Successful in 1m23s
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-22 20:57:38 +01:00
Miguel Palhas d17e52afda Merge remote-tracking branch 'origin/main' into issue/6-web-skeleton 2026-08-22 20:57:15 +01:00
Miguel Palhas 98a040a963 fix(ci): install before running biome in web-check
ci / web (pull_request) Failing after 48s
ci / rust (pull_request) Successful in 1m13s
e2e / e2e (pull_request) Successful in 1m3s
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-22 20:39:45 +01:00
Miguel Palhas f025b2529d feat(web): SPA skeleton embedded in the binary
ci / web (pull_request) Failing after 34s
ci / rust (pull_request) Successful in 1m46s
e2e / e2e (pull_request) Successful in 1m20s
Vite + TypeScript, no framework. One health board page proves the
whole path: fetch /api/health, render per-upstream verdicts. Biome
and tsc join the just ci gate; dev mode proxies /api to the daemon.

arr-daemon embeds web/dist via include_dir: build.rs runs pnpm when
available, accepts ARR_WEB_DIST prebuilt, and falls back to a
placeholder only in debug so the node-less CI rust job keeps working.

Closes #6

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-22 20:34:12 +01:00