Skip to content

Search is only available in production builds. Try building and previewing the site to test it out locally.

Idea + OQ: promote the in-house UI layer into a standalone UI framework

Источник: dev/fera/chroix-project/UI-FRAMEWORK-IDEA.md (read-only; сгенерировано scripts/sync-docs.mjs)

Idea + OQ: promote the in-house UI layer into a standalone UI framework

Section titled “Idea + OQ: promote the in-house UI layer into a standalone UI framework”

Status: parked. The author will return with a tech spec, a plan, and a name. Not started; do not design or implement against this yet.

Reclassify Fera’s custom UI layer from an internal implementation detail into a full, standalone UI framework project:

  • Swappable backends — the rendering engine is pluggable (the Vello/Parley engine is one backend, not the only one). This is the Engine axis (ADR-009/ADR-028) already in the design, promoted to a first-class public guarantee.
  • A stable public API — the composition surface (the HoF layer: components building a render tree from &State, the Msg/Effect vocabulary, single-pass hit-testing) becomes a documented, versioned API that outside code can build against.
  • A baseline implementation shipped alongside — a reference backend that works out of the box, so the framework is usable without assembling a renderer first.

This is a scope and product decision, not just an engineering one. It changes what the project ships (a framework, not only a client) and what it must support (a public API contract, semver, docs). The author is reserving the shape of it.

OQ (UI framework): Should Fera’s UI layer become its own framework project — swappable rendering backends, a stable public API, and a baseline backend shipped — and if so, under what name, scope, and plan?

To resolve, the author will supply (she is sending the spec file herself — this is her design pass, recorded here as idea + open question only):

  • a name for the framework;
  • a tech spec — what is in the public API, what the backend seam is, what the baseline backend covers;
  • a plan — sequencing against Fera itself (the client stays the first consumer).

The seed is real and in the repo: ui-contract holds the render tree as plain data plus the Engine trait seam (the backend axis), and ui-engine-vello is a first backend on Vello + Parley. The framework idea is a promotion of that seam to a public, versioned contract — not a from-scratch redesign.

(Recorded 2026-10-03 at the author’s direction. She returns with the tech spec, plan, and name.)