🏪 MERCHANT APP

Restaurant management dashboard for the Let's Eat delivery platform. Built with React Native, Expo, and TypeScript.

72
Source Files
12K+
Lines of Code
0
TS Errors
130
Tests Passing
Screen Previews

Pixel-accurate representations of every screen in the app

9:41
📶 🔋
MERCHANT
Welcome back
Sign in with your phone number
🇰🇾 +1 345 916 7890
Continue
Enter verification code
1
2
3
_

Authentication

Phone + OTP with Cayman flag, individual code boxes, auto-advance

9:41
📶 🔋
✓ Order #LE-4520 accepted · 15m prep
🏪 Brooklyn Bistro ▾ OPEN
3 active orders History →
New 2
Preparing 1
Ready
2 orders waiting
10m 15m 20m 30m
✓ Accept All · 15m prep
#LE-4521 Pending
S
Sarah Mitchell
🚗 Delivery · 2.4 km
Jerk Chicken Bowl$29.00
Sorrel Punch$5.00
Festival Fries$4.50
📋Orders
🍽️Menu
📊Analytics
⚙️Settings

Live Orders

Real-time 3-tab view, batch accept, toast notifications, WebSocket + polling

9:41
📶 🔋
🔔
NEW ORDER
#LE-4521
4
Items
$42.50
Total
🚗
Delivery
Jerk Chicken Bowl$29.00
Sorrel Punch$5.00
Festival Fries$4.50
Subtotal$38.50
Delivery fee$4.50
Tip$3.00
Total$42.50
Prep time
10m 15m 20m 25m 30m 45m
Reject
✓ Accept · 15m

New Order Alert

Full-screen takeover with sound + vibration loop. Can't be missed.

9:41
📶 🔋
🏪 Brooklyn Bistro ▾ ⬇️
Today
This Week
This Month
Revenue
$1,847.50
↗ 12.4% vs yesterday
47
Orders
$39.31
Avg Order
18m
Avg Prep
Acceptance Rate94%
🌟 Excellent! Keep it up.
Top Sellers
#1Jerk Chicken Bowl40 sold$580
#2Cayman Fish Tacos28 sold$342
#3Island Burger23 sold$299
📋Orders
🍽️Menu
📊Analytics
⚙️Settings

Analytics Dashboard

Revenue, order stats, acceptance rate, top sellers, peak hours

9:41
📶 🔋
🏪 Brooklyn Bistro ▾ +
▼ Main Dishes
5/6 active
🗑
🍗
Jerk Chicken Bowl 🌶️
$14.50
24 in stock
🌮
Cayman Fish Tacos
$12.00
18 in stock
🍔
Island Burger 🌱
Out of stock
▶ Sides
3/3 active
▶ Drinks
4/4 active
📋Orders
🍽️Menu
📊Analytics
⚙️Settings

Menu Management

Categories, products, stock levels, availability toggles, search

9:41
📶 🔋
🏪 Brooklyn Bistro ▾
Shop Status
🏪Accepting Orders
Operating Hours
Mon8:00 AM — 10:00 PM
Tue8:00 AM — 10:00 PM
Wed8:00 AM — 10:00 PM
SunClosed
Order Settings
⏱️
Default Prep Time
15 minutes
🛒
Minimum Order
$10.00 KYD
Staff
C
Conor Glynn
Owner
M
Maria Santos
Staff
📋Orders
🍽️Menu
📊Analytics
⚙️Settings

Settings

Shop status, hours, prep time, minimum order, staff management

All Features

Built to Uber Eats Merchant quality standard

📋

Live Orders

3-tab view (New/Preparing/Ready). Real-time WebSocket + 15s polling fallback.

🔔

New Order Alert

Full-screen takeover. Sound + vibration loop in iOS silent mode. Can't be ignored.

Batch Accept

Accept all pending orders at once during rush. Select prep time for all.

⏱️

Prep Countdown

Live timer on active orders. Green → Yellow → Red urgency colours.

Toast Notifications

Slide-down confirmations for accept/reject/ready. Global state.

Reject Reasons

6 preset reasons + custom input. Two-step confirmation.

⏸️

Pause Orders

Auto-resume timer: 15/30/60/120 min or indefinite.

🍽️

Menu Management

Categories with expand/collapse. Product search. Availability toggles.

✏️

Product Editor

Price, stock, dietary flags, variants, modifiers, image picker, prep time.

📊

Analytics

Revenue by period. Order stats. Acceptance rate. Top sellers. Peak hours.

💰

Earnings

Commission breakdown, payout history, net balance. All in KYD.

📤

CSV Export

Export order history for bookkeeping. Share via native share sheet.

📷

Image Upload

Camera + gallery picker for product photos with compression.

🧾

Receipt Preview

Kitchen ticket format. Ready for printer integration.

🕐

Hours Editor

Day-by-day schedule. Open/close times. "Copy to all" shortcut.

👥

Staff Management

Invite by phone. Assign Owner/Staff roles. Remove with confirmation.

🏪

Multi-Shop

Switch between locations instantly. All data scoped per shop.

🔐

Auth

Phone + OTP with Cayman flag. Individual boxes. Auto-advance + paste.

🔌

Connection Status

Auto-detecting banner. Polling fallback activates on disconnect.

💥

Error Boundary

App-level crash protection. Branded retry UI. Never shows white screen.

💀

Skeleton Loading

Shimmer placeholders on every screen during data fetch.

📱

Haptic Feedback

Tactile feedback on accept, reject, tab switches, toggles.

🧪

Dev Tools

Floating button to simulate orders. Full mock API for demos.

🎨

Brand Kit

#73BD31 green, #0D1212 dark, Poppins ExtraBold. 100% on-brand.