All projects
LiveFront-End

Cook For You

Online ordering website and admin dashboard for For You, an Egyptian restaurant in Germany. It handles delivery, pickup and table reservations, with Stripe payments.

Role
Front-End Developer (website & dashboard)
Timeline
3 Months
Client
For You, Egyptian Food (Wilhelmshaven, Germany)
Year
2025
Cook For You
01

Overview

Cook For You is the online ordering system for For You, an Egyptian food restaurant in Wilhelmshaven, Germany. Customers browse the restaurant's kitchens and menu, then order for delivery, pick up from the branch, or reserve a table. They can pay online by card or in cash on delivery.

I built both front-ends: the customer website and the admin dashboard where the team manages meals, kitchens, categories, branches, tables, opening hours and every incoming order. Both connect to a GraphQL API.

The problem

The restaurant needed its own ordering channel instead of depending only on phone calls, with real online payments that work for customers in Germany.

The solution

A bilingual ordering website with three order types (delivery, branch pickup and table reservation) and Stripe card payments, plus a dashboard that shows every order with its type, payment method and payment status.

02

Who It's For

C

Customers

Browse kitchens and meals, customize with options and add-ons, then order for delivery, pickup or a table.

R

Restaurant team

Manage the menu, branches and tables, follow orders by status, and see which orders are paid online or in cash.

03

Key Features

Stripe Payments

Online card payments with Stripe alongside cash on delivery, with each order's payment status tracked in the dashboard.

Three Order Types

Delivery with a scheduled time, pickup from the branch, or table reservation, each with its own flow.

Orders Management

Orders list filtered by date, code and status, with sub-views for pickup, delivery and table bookings.

Rich Menu Builder

Meals with kitchen, category, price, minimum weight, options, add-ons and recommended meals.

Branches & Tables

Branch details with opening hours, phone and WhatsApp, plus each branch's tables and number of seats.

Arabic & English

Both the website and the dashboard work in Arabic (RTL) and English.

05

Challenges & Solutions

Integrating Stripe into the ordering flow

Challenge

Card payments had to fit into three different order types, and an order could only be confirmed once its payment had actually succeeded. Cash orders still needed to work without Stripe.

Solution

I added Stripe at checkout for online payments and kept cash on delivery as a separate path. Every order carries its payment type and payment status, so the customer is sent back to a clear success or failure state, and the dashboard shows the team which orders are paid and which are still pending.

Have a project like this in mind?

I'd love to help you build something great. Tell me what you're working on.

Let's talk