Personal platform · Commerce operations
Sajjel
A broad commerce-control platform for family businesses: purchasing, receiving, inventory allocation, sales, settlements, shipping, and operational administration.
Project record
- Elysia
- Bun
- React
- TanStack Router
- TanStack Query
- Drizzle
- MySQL
- TypeBox
01 / Ownership
The part I owned
I modeled the domain and built the monorepo across an Elysia API, React web client, and shared Drizzle database package, including core purchasing and receiving workflows and their integration infrastructure.
02 / Engineering decisions
What made the system hold together.
Model the operation, not a generic CRUD app
Purchases, receiving discrepancies, settlement graphs, stock movements, and allocation are separate business events with explicit relationships and transitions.
Keep contracts end to end
Elysia and Eden carry typed API contracts into the client while database schemas and runtime validators establish the persistence boundary.
Prove inventory through scenarios
Graph builders, factories, seeders, and isolated integration databases exercise purchasing, payment, receiving, and reconciliation as connected workflows.
03 / Outcome
What exists now
The project established a typed, multi-organization foundation and proved the hardest inventory reconciliation paths. I paused it deliberately when its breadth outgrew the available product focus—not because the architecture hit a dead end.