goforge.dev/cadence is a target-independent Elm Architecture foundation for
Go+ applications. A program defines one model, a closed message algebra, one
update function, subscriptions, opaque commands, semantic elements, and
immutable semantic styles. Browser, server, terminal, and GUI modules interpret
those values without owning application policy.
The coordinated implementation plan is
../docs/superpowers/plans/2026-07-28-cadence-quicken-fullstack-ui.md.
-
cadence: validated execution plans and the compatibility region algebra. -
cadence/program: serialized TEA runtime, commands, subscriptions, codecs, and component lifting. -
cadence/sel: target-capability semantic elements and renderer contracts. -
cadence/style: immutable semantic style and theme values.
logic := program.Logic[Model, Msg]{
Init: func() program.Step[Model, Msg] {
return program.Step[Model, Msg]{Model: initial}
},
Update: update,
Subscriptions: func(Model) program.Subscriptions[Msg] {
return program.Subs[Msg]()
},
}Commands represent emit, batch, sequence, delay, cancellation, and typed target effects. The runtime serializes updates and delegates only capability-specific effects to an interpreter.
Plans separate initial render, state ownership, activation, transport, and
fallback. Hosts accept only ValidatedPlan.
hydrated := cadence.Hydrated(cadence.ActivateLoad{})
live := cadence.LiveServer(cadence.ActivateLoad{})
static := cadence.WithoutClient(hydrated)goforge.dev/quicken/web/browsergoforge.dev/quicken/tuigoforge.dev/quicken/nativegoforge.dev/quicken
Semantics are authored in .gp; checked-in generated Go is what consumers
build. MIT, Copyright (c) 2026 Goforge.