WEBRIFT
← Back to Work
Full-Stack Platform / Solo Build

MyPizza

A complete restaurant ordering platform built from the ground up — menu management, gamification, admin dashboards, push notifications, and PWA support. Designed and developed as a solo full-stack build from zero.

Timeline
Solo Build
Team
1 Developer
Role
Everything
Systems
10+
View Live Site →
MyPizza Homepage
01

Overview

MyPizza is a production restaurant ordering platform built for a wood-fired pizza restaurant in Tripoli, Lebanon. It handles the full customer journey — from browsing a dynamic menu with customization options, to placing orders with dual-currency support (USD and Lebanese Pound), to real-time order tracking.

But this isn't just an ordering page. The platform includes a complete admin dashboard for managing orders, analytics, menu items, inventory, staff shifts, and employee accounts. A separate staff portal lets kitchen and delivery teams manage their workflows. Gamification features — a spin wheel, loyalty points, flash promotions — drive engagement and repeat orders.

Every part of this system was designed and built by a single developer. Database schema, API routes, frontend UI, admin tools, push notification infrastructure, PWA setup, analytics integration — all of it. This project demonstrates what a focused solo developer can ship when they own the full stack.

10+
Core Systems
1
Developer
3
Portals (Customer, Admin, Staff)
2
Currencies
02

Features

MyPizza Menu Page
01

Dynamic Menu & Ordering

Categories with real-time items from Supabase. Each item opens a customization modal with presets (remove onions, extra cheese, well done) and paid extras. Special instructions, dual-currency pricing, and persistent cart with localStorage.

Built with: Supabase real-time, React context, localStorage persistence, Framer Motion
Photos coming soon
02

Gamification System

A canvas-rendered spin wheel where customers spend loyalty points to win discounts, free delivery, or free items. Weighted probability outcomes with real promo code generation. Plus a loyalty points system that rewards every order and a flash promo engine for time-limited deals.

Built with: Canvas API, probability engine, promo code generation, loyalty ledger
MyPizza Admin Dashboard
03

Admin Dashboard

A full back-office system with 7 tabs: real-time order management with status pipeline, analytics dashboard with KPIs, menu CRUD with image uploads, inventory tracking with purchase orders, shift scheduling, employee management, and gamification settings.

Built with: Supabase real-time subscriptions, multi-tab state, image upload to Supabase Storage
Photos coming soon
04

PWA & Push Notifications

Fully installable Progressive Web App with a custom service worker. Web Push notifications for order status updates (received, preparing, out for delivery, delivered), cart abandonment reminders after 30 minutes of inactivity, and promotional announcements.

Built with: Web Push API, Service Worker, PWA manifest, cart abandonment detection
MyPizza Taste Quiz
05

Taste Quiz & Personalization

A 5-question personalization quiz (spice preference, protein type, cheese level, sweet pizzas, adventurousness) that generates a taste profile stored in Supabase. The menu then shows personalized "Recommended for You" items based on tag matching against the user's profile.

Built with: Multi-step form, tag-based scoring, Supabase user profiles, recommendation engine
03

Stack

Framework
Next.js 16
UI Library
React 19
Language
TypeScript
Styling
Tailwind CSS 4
Animation
Framer Motion
Animation
GSAP
Database
Supabase
Auth
Supabase Auth
Email
Resend
Notifications
Web Push
Analytics
PostHog
Messaging
WhatsApp API