Skip to content
Frontend · Updated 24 October 2026

Restaurant ordering

A restaurant’s own website that takes orders on WhatsApp: the menu, a page for every dish, delivery or pickup, and a checkout that writes the order as one message. In English, French and Arabic.

$49Version 1.0.1

How buying works: message me on WhatsApp, pay by OMT or Whish, and I send you the repository within one working day.

Next.jsReactTypeScript

Screenshots

  • The Restaurant ordering on a desktop screen, in light mode
  • The Restaurant ordering on a phone, in light mode
  • The Restaurant ordering on a desktop screen, in Arabic, right to left
  • The Restaurant ordering on a phone: the WhatsApp message it writes, as WhatsApp shows it

The screenshots and the demo show sample content, which you replace with your own.See the whole page

What is inside

  • src/restaurant/content/ — the restaurant, its menu and every word on the site, in English, French and Arabic
  • The menu by section, a page for every dish with its choices, and an order that adds up as it is built
  • Delivery areas with their own fee and time, a delivery minimum, free delivery from an amount, and pickup
  • A checkout that checks every field: a Lebanese phone number, the area, the street, the minimum
  • Opening hours the checkout keeps to: no “as soon as possible” while the kitchen is closed, the next opening’s times instead
  • The order written as one WhatsApp message, then opened in WhatsApp on the restaurant’s number to send
  • Arabic right to left, with ranges and prices written the right way round
  • Metadata on every page, and a sitemap with every dish in every language
  • npm run build:static for hosts that only serve files, tests, and a GitHub Actions workflow

What it doesn't do

  • No server, database or admin page: the menu is a file you edit, and orders are not stored anywhere
  • No online payment: customers pay cash or card on delivery, or at the counter
  • No confirmation that an order arrived: the customer presses send in WhatsApp, and the restaurant replies
  • The same opening hours every day it opens, with days off as a setting: different hours per day, or a holiday, mean an edit
  • No stock or sold-out dishes
  • Made for Lebanon: Lebanese phone numbers, Beirut time, prices in dollars
  • The sample photographs are not in the zip: they download from Unsplash on the first run, for you to replace

What's in the zip

  • .github/workflows/ci.yml
  • screenshots/
  • scripts/build-static.mjs
  • scripts/photos.mjs
  • src/app/
  • src/fonts/
  • src/lib/
  • src/restaurant/
  • .env.example
  • CHANGELOG.md
  • LICENSE.md
  • README.md
  • package.json

What you need

  • Node.js 20.9 or later, and npm
  • A WhatsApp number for the restaurant
  • No database, API keys or paid services

Changelog

  1. 1.0.1

    • Next.js 16.4.3 in place of 16.3.8, which npm audit reports as critical. The template as shipped uses none of the features the advisories cover
    • Fixed: with npm run start on a Node server, a photo could stop loading for every visitor until the server restarted
    • No page, setting or content changes. CHANGELOG.md gives the lines to change in a site built on 1.0.0
  2. 1.0.0

    • The first release

Licence

One developer, unlimited projects of your own and your clients’. You may deliver it inside the projects you build; you may not resell or share the template itself, or use it to make a template product. Updates for twelve months.

The full terms are in LICENSE.md, which comes with the template. Ask me for a copy before you buy.

Questions people ask

What am I allowed to do with a template?

One developer can use it in as many projects as they like, their own and their clients’. You may not resell or share the template itself, changed or not, or use it to make a template product of your own.

Do I get updates?

Yes, for twelve months from purchase. When a new version comes out, I send it to you.

Is there support?

On WhatsApp or by email, with your licence key, and I answer within one working day. Support covers the template working as described. It does not cover writing your features for you.