build(web): generate the UI's Tailwind CSS with the pinned standalone CLI (#685)

Replaces the hand-written Tailwind subset in app.css with a real, purged
Tailwind build: scripts/build_css.py runs the pinned, SHA-256-checked
standalone Tailwind CLI (no Node), the generated tailwind.css and
plugin-frame.css are committed, and CI fails when they are stale. The Pi
never builds anything. The login page (#683) now links tailwind.css too,
and the load-order test covers every template that links app.css.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Chuck
2026-09-30 09:38:16 -04:00
committed by GitHub
co-authored by Claude Opus 5.5
parent 5ea0d511dc
commit ba6eccb489
23 changed files with 899 additions and 665 deletions
@@ -0,0 +1,12 @@
/*
* Input for static/v3/plugin-frame.css, the stylesheet for plugin web_ui/
* fragments shown in an iframe. Don't edit the output; edit this file or
* plugin-frame.config.js and run `python3 scripts/build_css.py`.
*
* Includes Tailwind's preflight, as the v2 CDN build the fragments were
* written against did.
*/
@tailwind base;
@tailwind components;
@tailwind utilities;