ARINZEBack to work

Product strategy · Experience design · Full-stack engineering

Moving food businesses from DMs to a store they control.

Many independent food businesses already have customers on WhatsApp and Instagram. What they lack is a reliable way to show what is available, collect complete orders and keep customers updated. I led the design and build of Topmenu to give them that missing layer.

Role
Product design + full-stack engineering
Product
Multi-tenant commerce platform
Platform
Responsive web
Status
Live product

DMs are good for conversation. They are a poor order system.

Selling through messages means answering the same menu questions, collecting customer details by hand, calculating delivery fees and searching chat threads for payment proof. As orders grow, the business becomes harder to run and mistakes become more expensive.

The opportunity was not to build another food marketplace. It was to give each business a direct ordering channel that still works with the social platforms where its audience lives.

A real store behind a link.

For the business

One place to run orders

Manage the menu, brand, orders, customers, fulfilment, store availability and reviews from a focused dashboard.

For the customer

A quicker path to food

Browse a branded menu, see the full cost, order without an account, share payment proof and follow progress.

From a shared link to a completed order.

  1. 01BuildAdd the menu, prices, brand and fulfilment details.
  2. 02SharePublish one store link or branded QR anywhere customers already are.
  3. 03OrderCustomers browse, choose delivery or pickup and send payment proof.
  4. 04FulfilThe kitchen confirms, prepares and updates the order from its dashboard.
  5. 05ReturnCustomers track progress and verified reviews build trust for the next order.

One platform, many independent stores.

I built Topmenu with Next.js and TypeScript, backed by Supabase for authentication, Postgres, realtime updates and file storage. Each food business gets its own branded storefront and dashboard while sharing one platform architecture.

  • Next.js
  • TypeScript
  • Tailwind CSS
  • Supabase
  • PostgreSQL
  • Zustand
  • Vercel
  • Resend
Customer storefrontShared commerce layerBusiness dashboard
01

Let customers order without creating an account

Requiring sign-up would add friction at the point of purchase. I kept checkout open to guests, saved recent orders on their device, and exposed only the narrow status information needed for tracking.

02

Keep each business in control of its money

Customers pay the food business directly and attach proof at checkout. Topmenu records the order and confirmation trail without sitting between the business and its earnings.

03

Separate storefront access from operational access

Public menus need to be easy to browse; customer details and business operations do not. I enforced that boundary in the data layer, with each business limited to its own orders and platform actions handled through protected server routes.

Delivery, pickup or both—not one rigid checkout.

Food businesses do not all fulfil orders the same way. I made fulfilment a business setting that changes onboarding, cart totals, checkout fields and the order-status flow. Customers only see the information their chosen route requires.

How would you like your order?

Fees and order steps update with the selected route.

A direct commerce product, not another marketplace.

Topmenu is live as a complete ordering loop: businesses can create a branded store, share it, receive and fulfil real orders, and build trust through verified reviews. The product gives small food businesses more structure without taking away the channels, identity or customer relationships they already own.

1shareable store link
3fulfilment modes
2connected product views
Livein market