A minimal e-commerce web application demonstrating modern full-stack development on the edge.
The project follows Hexagonal Architecture, TDD and DDD principles:
packages/
business/ # Domain layer — entities, value objects, use cases, port interfaces
application/ # Application layer — shared utilities (FetchApi, etc.)
css/ # Shared design tokens and themes
apps/
api/ # Hono API deployed as a Cloudflare Worker
react/ # React SPA (Vite + TailwindCSS)
sveltekit/ # SvelteKit app (planned)
next/ # Next.js app (planned)
The business package is framework-agnostic: entities, use cases and repository interfaces live here with no dependency on any runtime or framework. Each app implements its own repository adapters against these ports.
apps/api)KV_CART) with 24h TTL; supports both authenticated and anonymous users, with automatic cart merge on sign-inapps/react)packages/business)CartEntity, CartItemEntity, CartItemProductEntity, ProductEntity, ProductItemEntity, CategoryEntity, CustomerEntity, EmailInfoEntity, OrderEntitypackages/businessbun install
# Start all apps
bun run dev
# Or individually
bun run dev:api # Hono API on port 4000
bun run dev:react # React app (Vite)
bun run db:generate # Generate Drizzle migrations
bun run db:migrate # Run migrations
bun run db:seed # Seed data
bun run test # Run all tests
bun run test:business # Run business domain tests only
bun run test:react # Run React tests only
bun run build
Private