Recause – Write complex interactive UIs as ordinary JavaScript functions

Ruebennase1 pts0 comments

Recause — Another way to write interactive software

There isanother wayto writeinteractivesoftware.<br>Recause evaluates an ordinary flow against explicit state. Missing information stops the run. New state causes the same flow to run again and reach further.<br>A programming modelA reference implementationAn invitation<br>SEE IT RUNGITHUB

RUN<br>STOP<br>STATE<br>RUN<br>same function · more state · more of the story becomes reachable

DERIVED FRAMEWORK DEMO · SIMULATION ONLY<br>UI / FLOW / STATEUNDO RESET<br>Sample Dialog<br>Hold the dialog and watch what happens in the FLOW, to the STATE, and to the TRACE. Orgo to the Real Demos.

FLOWSTATETRACE

SERIALIZABLE STATE<br>{}<br>CURRENT SUSPENSION<br>name

RUN 0001REV 0000

THE CORE<br>The flow is still ordinary code.<br>No separate graph has to mirror it. Conditions, loops, functions and domain libraries remain available. Progress lives in explicit state rather than in callback choreography.<br>stop when a required fact is absent<br>serialize the complete interaction state<br>load it in another engine and re-enter<br>compose forms, chats, pages and async work

THE CONSEQUENCE<br>Interaction styles become interchangeable.<br>A value can be obtained through a form, a guided chat, an asynchronous service or another derived framework. Downstream logic only sees the resulting state.<br>forms where structure is best<br>chat where interpretation is needed<br>AI only where it earns its place<br>one execution model underneath

DERIVED FRAMEWORKS<br>FORM<br>Collect related facts<br>Validation, repeatable sections and completion boundaries.

CHAT<br>Guide one answer at a time<br>Conversation as a precise instrument, not a replacement for structure.

PAGES<br>Give the interaction shape<br>Compose navigable stages without changing the state model.

ASYNC<br>Wait for external facts<br>Treat service results as missing state and re-enter when they arrive.

READ THE FLOW.<br>Recause is an experimental open-source programming model. The JavaScript runtime is its first reference implementation—and an invitation to implement, adapt and extend the idea.<br>Ideas deserve more than one implementation.<br>REAL DEMOSGITHUB

MOTION<br>CLOSE

Visualization parameters.

RESET<br>RANDOMIZE<br>FREEZE<br>COPY PROFILE

state flow recause ordinary another derived

Related Articles