mirror of
https://github.com/tiennm99/ccs.git
synced 2026-07-16 10:16:49 +00:00
The v1.1 design contract names three identity-strip patterns but the styleguide previously only demoed PageHeader. Future contributors visiting /_styleguide had no live preview of HeroBar or rail-anchored identity, leaving the contract under-documented. Add: - 1a. HeroBar demo (canonical: home pattern) -- single-row dense hero with logo + title + version badge + 4 inline stat tiles, dotted background pattern, anonymized data - 1b. Rail-anchored identity demo (canonical: cliproxy pattern) -- a Config 3-pane layout where the left rail carries brand + Quick Setup CTA + provider list + footer status, with NO top chrome - 1c. PageHeader demo (existing, retitled with health pattern reference) All demos use anonymized data (Provider A/B/C, Demo Dashboard, fake metrics) so screenshots are safe to publish without Privacy mode.
CCS Dashboard UI
React + TypeScript + Vite frontend for the CCS local dashboard.
This UI is served by the CCS web server and is accessed via:
ccs config
Development
From project root:
bun run dev
This starts the CCS server, opens a local browser URL, and prints bind/network details for the dashboard. If the runtime bind is reachable beyond loopback, CCS also prints an auth reminder.
For remote device access during development, run:
bun run dev -- --host 0.0.0.0
For local-only development, run:
bun run dev -- --host 127.0.0.1
From ui/ only (frontend dev server):
cd ui
bun run dev
Quality Commands
cd ui
bun run typecheck
bun run lint
bun run validate
bun run test:run
i18n
Dashboard localization uses react-i18next.
- Main setup:
ui/src/lib/i18n.ts - Locale helpers:
ui/src/lib/locales.ts - Language switcher:
ui/src/components/layout/language-switcher.tsx
For full architecture, conventions, and locale onboarding, see:
Notes
- UI locale persistence uses browser localStorage key
ccs-ui-locale. - Current supported locales are managed in
ui/src/lib/locales.ts. - Current locales:
en,zh-CN,vi. - Fallback locale is English (
en).