sync radius
This commit is contained in:
@@ -76,6 +76,7 @@ GPUI is a UI framework which also provides primitives for state and concurrency
|
||||
|
||||
- Dependency direction is one-way: `gpui-native-kit` (facade) → `gpui-native-core` / `gpui-native-editor` / … → `gpui-native-theme` + `gpui-native-icons` → gpui. No cycles. Nothing depends on `gpui-component`, `gpui-kit`, `gpuikit`, `bezel`, `native-theme`, or any gpui fork.
|
||||
- `crates/theme` owns the native theme engine and every color, radius, spacing, and metric value — no raw `rgb`/`rgba`/`hsla` or layout `px(...)` literals anywhere else.
|
||||
- Components always take corner radii from the theme `Radius` token (`cx.theme().radius`); never use gpui's `rounded_*` presets or hardcoded radii in components.
|
||||
- `crates/icons` owns icon resolution; components reference icons by semantic role — no glyph names, unicode symbols, or SVG paths anywhere else.
|
||||
- `crates/core` and its sibling crates own components: each one is a small self-contained implementation gated behind its own cargo feature. Features are additive, gate whole modules only, and may depend on other features. Behavior and presentation live together. No separate behavior layer — promote a shared helper only when a third component needs it.
|
||||
- Components are written in-tree. Other UI toolkits are read for API ideas only; never port their code or depend on them.
|
||||
|
||||
Reference in New Issue
Block a user