What's Inside
- 10 pages: Home, Story, Menu, Spaces, Private dining, Gallery, News, FAQ, Reservation, Contact
- A tasting-menu section where each course stacks over the last as you scroll
- A menu laid out like a printed carte (dish name, dotted leader, price) — tap a dish and its plate grows into a detail view. Gallery with a lightbox
- Working reservation form (date, time, party size, notes) and contact form: paste a Formspree, Getform or Basin endpoint and they send
- All copy and prices live in one file (content.js). Change the text, keep the design
- Three open-licence Google Fonts (Fraunces, Figtree, DM Mono) and a "Plate" photo slot that looks finished even before you add photos
- Fully responsive, checked at 320, 390, 768 and 1440 px
- English demo content, plus a Korean content file
- Plain CSS and JavaScript — no Tailwind or TypeScript setup to learn
What You Get
- Full source code (React 18 + Vite 5 + Framer Motion 11)
- 23 demo photos (AI-generated, yours to use; we recommend replacing them with photos of your own place)
- README with setup, editing and deploy guides (Netlify, Vercel, Cloudflare Pages)
- License file
Requirements
Node.js 18 or newer. Basic comfort with editing a JavaScript file.
Licenses
- Personal — 1 website (yours or one client's)
- Commercial — unlimited websites, for one person
- Agency — unlimited websites for your whole team, plus 6 months of priority email support
Reselling or redistributing the template itself is not allowed.
The restaurant, people, prices and text in the demo are fictional.




