How kancanvas/ownpizza works
OWNpizza is a small pizza storefront built with Next.js and Express. Visitors can view a static pizza showcase, open an informational page, or visit a menu page that fetches pizza records from Express; the API reads PostgreSQL through Prisma and returns sample fallback pizzas when the database is empty or unavailable. The shared layout renders the header around the selected page. The sampled source confirms this menu flow, but does not establish working search, cart, login, or checkout behavior.
Main entry points: layout.js Shared layout · server.js Pizza API · page.js Menu page · prisma.js Prisma client
Components 10
Storefront
- Shared layout
app/layout.js - Header
components/Header.jsx - Pizza showcase
app/page.js - Menu page
app/menu/page.js - About page
app/about/page.js
API
- Express server
server.js - Pizza API
server.js
Persistence
- Prisma client
lib/prisma.js - PostgreSQL pizzas
prisma/schema.prisma
Other components
- Visitor
Connections 10
- Visitor → Shared layout: opens site
- Shared layout → Header: renders
- Shared layout → Pizza showcase: renders
- Shared layout → Menu page: renders
- Shared layout → About page: renders
- Menu page → Pizza API: fetches menu
- Express server → Pizza API: handles route
- Pizza API → Prisma client: queries
- Prisma client → PostgreSQL pizzas: reads pizzas
- Pizza API → Menu page: returns JSON