git.lucas.co / cce-relief
relief editors: wall and edge profiles, finish, frost; ramp specs
git clone https://git.lucas.co/cce-relief.git

CLAUDE.md (1.4K)

 1 # cce-relief
 2 
 3 The DE's relief editors. Read the workspace guide (`../cce-compositor/WORKSPACE.md`)
 4 first; this file covers only what is particular to this crate. The relief itself — the
 5 wall and edge profiles, the finish, the frost, the config keys they write — is
 6 documented in `../cce-ui/CLAUDE.md` ("The relief is two shapes", "The surface config
 7 shape"), since every app draws it.
 8 
 9 ## Shape
10 
11 Two binaries, both launched by name by other apps (cce-data-editor's `(bevel)` and
12 `(ramp)` previews, cce-grid's line relief), so the names must not change:
13 
14 - `src/main.rs` — **`cce-relief`**: a relief shape shown as a lit cross-section of the
15   edge, shaped by Shoulder / Base / Bias, with the shading strip under it, the Finish
16   and Frost columns, and Save (the shared config, a retargeted file, or one
17   `--key <flat.path>` value). Its slider positions are its own state, not style:
18   `~/.config/cce/cce-relief/state.kdl` (`knob_state`). Save writes the current
19   spellings and removes every retired key it finds; it is the migration for them.
20 - `src/bin/cce-ramp.rs` — **`cce-ramp`**: a ramp spec editor, `--key <flat.path>`
21   writing the spec back to that value.
22 
23 Until 2026-10-08 both were bins of the cce-ui crate, which installed them with the
24 toolkit; they moved out because an app does not belong in the toolkit.
25 
26 ## Build, test, run
27 
28 ```sh
29 cargo build -p cce-relief
30 cargo test  -p cce-relief
31 ccebuild install cce-relief     # installs both bins
32 ```