The front end framework for correctness: built on Effect, architected like Elm
Foldkit is a TypeScript‑based frontend framework that combines the Elm architecture with the Effect library. It provides a single immutable model, explicit effect handling, and built‑in routing, UI components, and resource management. The framework aims to improve scalability and developer experience by offering a cohesive set of tools out of the box.
- ▪Foldkit uses a single immutable model and an update function to manage application state, eliminating hidden mutations.
- ▪Side effects are represented as Effect values returned from the update function, allowing the runtime to control execution.
- ▪The framework includes type‑safe bidirectional routing, accessible UI components, submodel composition, and managed resources such as WebSockets and audio contexts.
- ▪Testing utilities let developers send messages through the update function and assert on resulting state and commands, while dev tools provide time‑travel debugging.
Hacker News (Front Page) files mainly under programming. We currently carry 538 of its stories. Top-voted stories on Hacker News.
Opening excerpt (first ~120 words) tap to expand
BetaThe frontend framework for correctness.Built on Effect. Architected like Elm. Written in TypeScript.npx create-foldkit-app@latestDive InLaunch PlaygroundView on GitHub674Declare behavior. Ship. Repeat.React, Vue, Svelte, and Solid solve rendering and leave the architecture to you. Foldkit gives you the architecture, so you can focus on your domain.Predictable stateOne immutable model holds your entire application state. Every change flows through a single update function. No hidden mutations, no stale closures, no surprises.Explicit effectsSide effects are values you return from update, not imperative calls buried in handlers. Commands describe what should happen. The runtime handles when and how.Scales with graceComplexity grows linearly, not exponentially.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at Foldkit.