@@ -33,7 +33,7 @@ slices.
3333
3434- Deno 2.9.1 and TypeScript
3535- Oak HTTP server
36- - Effect application services
36+ - Effect core services
3737- SQLite through Deno's built-in ` node:sqlite `
3838- React 19 and Vite
3939- One production container with a mounted data directory
@@ -201,15 +201,19 @@ command can be added later.
201201
202202``` text
203203api/
204- ├── application/ Effect services and use cases
205- └── infrastructure/
206- ├── database/ SQLite connection and migrations
207- └── http/ Oak routes and HTTP error mapping
204+ ├── defs/ Shared type and schema definitions
205+ ├── core/ Resource use cases, validation, store contracts, errors
206+ ├── infrastructure/
207+ │ ├── database/ SQLite connection, migrations, and store implementations
208+ │ └── http/ Oak routes and HTTP error mapping
209+ └── lib/ Shared backend mechanics
208210
209211frontend/
210212└── src/
211213 ├── api/ Browser-side API calls
212- ├── app/ React components
214+ ├── app/ Router and application shell
215+ ├── features/ Feature UI by resource
216+ ├── lib/ Shared frontend mechanics
213217 └── styles/ CSS tokens and global styles
214218
215219migrations/ Ordered, immutable SQL migrations
@@ -222,8 +226,8 @@ data/
222226```
223227
224228The frontend runs in the browser. It can call HTTP endpoints but never imports
225- database or server modules. Oak translates HTTP into application calls. Effect
226- models application behavior and typed failures. SQLite owns persistent state.
229+ database or server modules. Oak translates HTTP into core calls. Effect models
230+ core behavior and typed failures. SQLite owns persistent state.
227231
228232## Current scope
229233
0 commit comments