Skip to content

feat(site): read server state through effect-atom runtime atoms - #98

Open
systemfsoftware-maker wants to merge 1 commit into
test/site-generated-schema-lawsfrom
feat/site-ui-effect-atom
Open

systemfsoftware-maker wants to merge 1 commit into
test/site-generated-schema-lawsfrom
feat/site-ui-effect-atom

Conversation

@systemfsoftware-maker

@systemfsoftware-maker systemfsoftware-maker commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

The guestbook page and the home page built RPC effects inside .tsx
modules and ran them with Effect.runPromise from useEffect and event
handlers. Server calls now live in .ts atom modules on one runtime over
the RPC client layer (api/health-atoms.ts, features/guestbook/
guestbook-atoms.ts): query atoms for list and health, fn atoms for sign
and moderate that refresh the list, and pure view functions composed into
server-safe view atoms. Components only read atoms and dispatch; the root
route binds the client layer into the registry once.

Adds @systemfsoftware/effect-atom and effect-atom-react from the flake's
.sfs-deps tarballs. Follows the ui-state pack (components-perform-no-io,
server-data-lives-in-atoms, components-dispatch-to-runtime-atoms,
view-models-are-pure-functions).

Verification

Gates exit 0; site test 63; journeys 8/8 against pnpm dev; no runPromise/runFork/fetch in any .tsx.

Layer of stack #100 (trunk main), merge bottom-up.

The guestbook page and the home page built RPC effects inside .tsx
modules and ran them with Effect.runPromise from useEffect and event
handlers. Server calls now live in .ts atom modules on one runtime over
the RPC client layer (api/health-atoms.ts, features/guestbook/
guestbook-atoms.ts): query atoms for list and health, fn atoms for sign
and moderate that refresh the list, and pure view functions composed into
server-safe view atoms. Components only read atoms and dispatch; the root
route binds the client layer into the registry once.

Adds @systemfsoftware/effect-atom and effect-atom-react from the flake's
.sfs-deps tarballs. Follows the ui-state pack (components-perform-no-io,
server-data-lives-in-atoms, components-dispatch-to-runtime-atoms,
view-models-are-pure-functions).
@systemfsoftware-maker
systemfsoftware-maker added this pull request to stack #100 October 16, 2026 04:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant