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 ```