Skip to content

Commit 65f3a70

Browse files
Merge pull request #17 from QuentinHourdeaux/refactor/lib-foundation
Refactor codebase foundations for clearer boundaries
2 parents 4a8cfd7 + 17d0010 commit 65f3a70

63 files changed

Lines changed: 2222 additions & 1274 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -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
203203
api/
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
209211
frontend/
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
215219
migrations/ Ordered, immutable SQL migrations
@@ -222,8 +226,8 @@ data/
222226
```
223227

224228
The 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

api/application/state-repository.ts

Lines changed: 0 additions & 85 deletions
This file was deleted.

0 commit comments

Comments
 (0)