Skip to content

Commit ab8c19e

Browse files
Seryizaakim1995NikitaSincipasechnikov
committed
redesign UI: Dashboard, Inbound Messages, Simulate Sender, Unmapped Codex, Terminology map
Co-authored-by: Akim Khalitov <akim.khalitov@health-samurai.io> Co-authored-by: Nikita Sintsev <nikita.sintsev@health-samurai.io> Co-authored-by: Ilia Pasechnikov <ilia.pasechnikov@health-samurai.io>
1 parent fbf2e76 commit ab8c19e

134 files changed

Lines changed: 24556 additions & 2005 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.mcp.json

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"mcpServers": {
3+
"chrome-devtools": {
4+
"command": "npx",
5+
"args": [
6+
"-y",
7+
"chrome-devtools-mcp@latest",
8+
"--browserUrl",
9+
"http://127.0.0.1:9222"
10+
]
11+
}
12+
}
13+
}

CLAUDE.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ bun run dev # Start web server (logs to logs/server.log)
3939
bun run dev # Start server with hot reload
4040
bun run stop # Stop the server
4141
bun run logs # Tail server logs
42-
bun run mllp # Start MLLP server (port 2575)
42+
bun run mllp # Start MLLP server (port 2575). Separate process from `bun run dev`; no hot-reload. Restart it after changes to src/mllp/mllp-server.ts.
4343
bun scripts/load-test-data.ts # Load 5 test patients with related resources
4444
bun scripts/import-batch.ts <zip|dir> [--tag <name>] # Bulk-import HL7v2 messages under a batchTag
4545
bun run typecheck # TypeScript type checking
@@ -71,7 +71,8 @@ Read `docs/developer-guide/how-to/development-guide.md` for test infrastructure,
7171

7272
Env flags:
7373
- `DISABLE_POLLING=1` — do not start any workers (useful for tests or when running the standalone `bun src/v2-to-fhir/processor-service.ts` scripts).
74-
- `POLL_INTERVAL_MS` — override poll interval. Default 5000ms (demo-friendly). The standalone scripts still use their own 60000ms default.
74+
- `POLL_INTERVAL_MS` — override poll interval. Default 1000ms. The standalone scripts still use their own 60000ms default.
75+
- `DEMO_MODE` — default-on. Controls the Dashboard's "Run demo now" endpoint (`POST /demo/run-scenario`). Unset, empty, or any non-`"off"` value enables it; only `DEMO_MODE=off` disables (returns 403).
7576

7677
The per-service standalone entrypoints (`bun src/bar/sender-service.ts` etc.) are unchanged and still work — they share the same factories.
7778

@@ -81,7 +82,8 @@ The per-service standalone entrypoints (`bun src/bar/sender-service.ts` etc.) ar
8182

8283
Env flags:
8384
- `DISABLE_POLLING=1` — do not start any workers (useful for tests or when running the standalone `bun src/v2-to-fhir/processor-service.ts` scripts).
84-
- `POLL_INTERVAL_MS` — override poll interval. Default 5000ms (demo-friendly). The standalone scripts still use their own 60000ms default.
85+
- `POLL_INTERVAL_MS` — override poll interval. Default 1000ms. The standalone scripts still use their own 60000ms default.
86+
- `DEMO_MODE` — default-on. Controls the Dashboard's "Run demo now" endpoint (`POST /demo/run-scenario`). Unset, empty, or any non-`"off"` value enables it; only `DEMO_MODE=off` disables (returns 403).
8587

8688
The per-service standalone entrypoints (`bun src/bar/sender-service.ts` etc.) are unchanged and still work — they share the same factories.
8789

@@ -119,12 +121,19 @@ For anything beyond this file, read `docs/developer-guide/`:
119121
| HL7 reference JSON generation (XSD+PDF → data/hl7v2-reference) | `how-to/hl7v2-reference-generation.md` |
120122
| Batch-importing HL7v2 zips and triaging errors | `how-to/batch-import.md` |
121123
| Testing, integration infra, codegen/debug workflows | `how-to/development-guide.md` |
124+
| UI architecture, shell composition, htmx/Alpine patterns | `ui-architecture.md` |
125+
| Design tokens, class vocabulary, color palette | `ui-design-tokens.md` |
126+
| End-to-end recipe for adding a new UI page | `how-to/add-ui-page.md` |
122127
| VXU ORDER OBX hard error decision | `adr/001-unknown-order-obx-hard-error.md` |
123128

124129
## Code Style
125130

126131
IMPORTANT: Read `.claude/code-style.md` before writing or modifying code.
127132

133+
UI conventions: see `docs/developer-guide/ui-architecture.md`.
134+
135+
Tailwind v4 gotcha: Tailwind utilities are emitted inside cascade layers, while `DESIGN_SYSTEM_CSS` is plain unlayered CSS. Broad unlayered resets override utilities even when the utility selector looks more specific; e.g. `a { color: inherit; }` breaks legacy anchor tabs using `text-white` / `text-gray-*`. Scope resets to unclassed elements (`a:not([class])`) or put them in Tailwind's base layer.
136+
128137
## Bun, not Node
129138

130139
This project uses Bun. Use `bun`/`bun install`/`bun run` instead of `node`/`npm`/`yarn`/`pnpm`. Unit tests use `bun test` (not jest/vitest). Bun auto-loads `.env` (no `dotenv`). HTTP: `Bun.serve()`. File I/O: `Bun.file`.

ai/tickets/2026-04-22-demo-ready-ui-tier1.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# Plan: Demo-Ready UI (Tier 1)
22

3+
> **Status: tasks 3–7 superseded by [`2026-04-23-ui-design-system-refactor.md`](./2026-04-23-ui-design-system-refactor.md)** (completed 2026-04-23).
4+
> Tasks 1 and 2 shipped as planned; tasks 3–7 were folded into the warm-paper redesign and are no longer actionable here. See the superseding plan for the final implementation.
5+
36
## Overview
47

58
Transform the admin-grade UI into a customer-demo-ready UI without a rewrite. Biggest unlock: auto-start the three polling services inside the web server so the pipeline is genuinely live on screen. Everything else (dashboard, nav regrouping, severity-graded status colors, auto-refresh, demo scenario button) builds on that foundation.

0 commit comments

Comments
 (0)