How filipdjekic/bakery works
Pekara is a bakery storefront with online ordering and an administration area for managing orders, products, categories, and bakery settings. The customer journey spans browsing the catalog, maintaining a cart, choosing a pickup time, submitting an order, and viewing its confirmation; the admin side supports operations and configuration. The order API’s validation, idempotency, rate limiting, and creation flow, plus pickup-slot and authentication endpoints, are supported by sampled source. Other feature branches are represented by their paths; their internal wiring was not sampled.
Main entry points: (protected) Admin workspace · route.ts Order endpoint · (public) Storefront pages · cart Shopping cart
Components 24
Storefront
- Storefront pages
pekara/src/app/(public) - Product catalog
pekara/src/features/catalog - Shopping cart
pekara/src/features/cart - Browser cart storage
pekara/src/features/cart/store/cart-storage.ts
Ordering
- Checkout
pekara/src/features/checkout - Order endpoint
pekara/src/app/api/orders/route.ts - Pickup slots endpoint
pekara/src/app/api/pickup-slots/route.ts - Pickup scheduling
pekara/src/server/services/pickup-slots.ts - Checkout validation
pekara/src/validation/checkout.ts - Idempotent processing
pekara/src/server/services/idempotency.ts - Order creation
pekara/src/server/services/create-order.ts - Order confirmation
pekara/src/features/orders/components/order-confirmation.tsx
Bakery operations
- Admin workspace
pekara/src/app/admin/(protected) - Order management
pekara/src/features/admin-orders - Product management
pekara/src/features/admin-products - Category management
pekara/src/features/categories - Bakery settings
pekara/src/features/settings
Backend services
- Auth endpoint
pekara/src/app/api/auth/[...all]/route.ts - Authentication
pekara/src/server/auth/auth.ts - PostgreSQL database
pekara/src/prisma/db.ts - Transactional email
pekara/src/server/email
Other components
- Customer
- Resend
- Vercel Blob
Connections 20
- Customer → Storefront pages: browses
- Storefront pages → Product catalog: shows products
- Customer → Shopping cart: adds items
- Shopping cart → Browser cart storage: persists
- Customer → Checkout: checks out
- Checkout → Order endpoint: submits order
- Order endpoint → Checkout validation: validates with
- Order endpoint → Idempotent processing: executes through
- Order endpoint → Order creation: creates via
- Customer → Pickup slots endpoint: requests slots
- Pickup slots endpoint → Pickup scheduling: loads slots
- Customer → Order confirmation: views result
- Admin workspace → Order management: manages orders
- Admin workspace → Product management: manages products
- Admin workspace → Category management: manages categories
- Admin workspace → Bakery settings: configures bakery
- Auth endpoint → Authentication: dispatches to
- Authentication → PostgreSQL database: uses adapter
- Transactional email → Resend: sends through
- Vercel Blob → Product management: stores images for