Restaurant SPA
Pisano's Pizza
Custom React menu platform — CSV-driven menu, EmailJS intake, zero page builder.

Lighthouse scores
Lab audit (production build) ·
- Performance
- —not yet audited
- Accessibility
- 93
- Best Practices
- 100
- SEO
- 100
Accessibility / Best Practices / SEO from production dist lab run. Performance pass deferred — menu photography LCP optimization is next engineering sprint.
Challenge
Local restaurants usually get slow Elementor clones. Pisano's needed a brand-forward site that can update menu items from structured data and still feel like a flagship digital storefront.
Solution
React + Vite + TypeScript with a Papa Parse CSV menu pipeline, sharp-optimized image workflow, and EmailJS for inquiries. Hosted as a static export on Hostinger — the client can change menu rows without touching JSX.
Stack
- Vite
- React
- TypeScript
- Tailwind CSS
- Papa Parse
- EmailJS
- Sharp
- Hostinger
Engineering highlights
Menu pipeline
CSV → typed menu data via Papa Parse
Imagery
Sharp-based asset pipeline for menu photography
Intake
EmailJS contact without a WordPress form plugin
Hosting
Static dist/ on Hostinger FTP
Results
- Lab Accessibility 93 · Best Practices 100 · SEO 100
- Menu updates via CSV — no CMS plugin stack
- Custom visual system (not a restaurant theme reskin)
- Full source ownership — rebuild-ready if hosting changes
