mirror of
https://github.com/danny-avila/LibreChat.git
synced 2026-09-01 19:41:32 +00:00
* 🎨 feat: Add Versioned Theme Foundation * 🧩 fix: Keep Theme-Aware Chip Actions Consistent * 🎛️ fix: Preserve Default Theme Geometry * 🪪 fix: Keep Theme Identity in Sync * 🧭 docs: Define Theme Styling Policy * 🧹 chore: Sort Theme Imports * 🧵 fix: Preserve Theme Compatibility Contracts * 🛡️ fix: Harden Theme Compatibility Boundaries * 🧵 fix: Publish Theme Appearance Preset * 🐳 fix: Include Theme Preset in Docker Build * 🪢 fix: Preserve Legacy Theme Compatibility * 🧭 fix: Harden Theme Lifecycle Boundaries * 🧱 fix: Align Theme Appearance Defaults * 🧬 fix: Record Persisted Theme Provenance * 🧭 fix: Preserve Theme Transition State * 🧷 fix: Preserve Legacy Theme Contracts
13 lines
941 B
Markdown
13 lines
941 B
Markdown
See CLAUDE.md.
|
|
|
|
## Frontend theming and styling
|
|
|
|
For frontend work, compose existing `@librechat/client` primitives and variants before adding
|
|
feature-local styles. Use semantic theme/Tailwind roles for color and shared appearance; do not
|
|
introduce raw palette utilities, hard-coded colors, or arbitrary theme CSS. If the system cannot
|
|
express a reusable design need, deepen the shared primitive or versioned theme-token registry
|
|
instead of copying classes into a feature. Keep genuine layout and behavior local, and document
|
|
why any new custom CSS cannot be expressed by the shared system. See the detailed policy in
|
|
`CLAUDE.md` under “Theming and styling.”
|
|
|
|
When adding or changing code that mutates user documents, invalidate the auth user document cache for affected users. This includes single-user updates and bulk role/user mutations; otherwise OpenID JWT request burst caching can serve a stale `req.user` until its TTL expires.
|