Scaffold an Effect application.
Stack Effect is a CLI for creating and extending TypeScript repositories built with Effect. Choose the targets and capabilities you need; Stack Effect resolves their dependencies and shows the repository changes before writing them.
Copy and run:
bunx stack-effect@latest init my-app --yesInteractive dry run
See a selection become a repository.
Choose a recipe, then inspect the same dependency trees and file plan the CLI presents before it writes anything.
React chat with shared Effect RPC contracts.
AI chat: Selection
User intent
Select one capability.
Run add --dry-run to choose through the interactive TUI. This walkthrough represents that choice with --target client-react/web:client-react-chat --yes so each recipe stays reproducible.
$ bunx stack-effect@latest init demo-chat --yes
$ cd demo-chat
$ bunx stack-effect@latest add --dry-run
# Demo selection: --target client-react/web:client-react-chat --yesSwipe horizontally to inspect long lines.
How Stack Effect composes a project
Targets define the parts of the repository: a CLI, server, client, or shared package. Modules add capabilities to those targets, such as chat, HTTP APIs, or shared contracts.
Stack Effect resolves your selection into a dependency-complete Blueprint,
then compares it with the repository to produce an explicit Plan. Use
--dry-run to inspect every affected path before anything is written.
Create your first project
Initialize a repository, move into it, then use add to choose what to include
through the interactive TUI.
bunx stack-effect@latest init my-app
cd my-app
bunx stack-effect@latest add