01 / REQUIREMENTS
Dependencies you can see
Services are tokens, contracts and yieldable handles. TypeScript follows every dependency from the generator to the Runtime.
RESULTS, SERVICES, LIFETIMES.
A small, typed architecture for TypeScript applications built on better-result. Compose dependencies, protect error boundaries and close what you open.
better-effect stays close to TypeScript, Promises and better-result. There is no hidden scheduler to learn and no container vocabulary in your domain code.
Learn the mental model01 / REQUIREMENTS
Services are tokens, contracts and yieldable handles. TypeScript follows every dependency from the generator to the Runtime.
02 / COMPOSITION
Layers describe implementations independently from your container. Merge production wiring and override only what tests need.
03 / LIFETIMES
Scopes make resource ownership explicit: execution-local work closes fast, application resources close gracefully at shutdown.
Read the guide, wire your first Layer and let the compiler show you what your application needs.
Open the guide