ADR 0003: UI Design (Solarized 'Unix Guy' / Zero-NPM)¶
Status¶
Accepted
Context¶
Implement rune-ui, the "Face" (BFF) of the RUNE ecosystem. This component is a thin interface to the rune-api, providing a modular, observable dashboard.
Decision¶
- Zero NPM: Strictly avoid JavaScript frameworks and NPM to minimize supply chain risks.
- Tech Stack: Python 3.14, FastAPI, HTMX, Jinja2.
- Aesthetic: "Modern Unix Guy" with Solarized theme and Fira Code typography.
- Core Features:
- Modular configuration (fetched from
rune-api). - Streaming log viewer via SSE/HTMX.
- Pre-Flight Spend Alerts for projected costs.
- S3-based report persistence.
- Modular configuration (fetched from
Consequences¶
- No NPM-related vulnerabilities.
- Server-driven UI (HTMX) simplifies state management.
- Limited client-side interactivity compared to SPA frameworks, but sufficient for RUNE's needs.
- Higher dependency on server-side rendering performance.