Element

Restaurant / Food Service · 2026

Katcha Steak

A custom online ordering platform — menu, cart, pickup and delivery — built for a Kalamazoo cheesesteak and hoagie shop.

Katcha Steak — Restaurant / Food Service website built by Element Web Company
Industry
Restaurant / Food Service
Year
2026
Services
Custom Web Development, Web App Development
Status
In development

Starting point

The challenge

Katcha Steak makes cheesesteaks and hoagies in Kalamazoo, and every order had to be taken by a person. There was no way for a customer to read the full menu, build a sandwich the way they wanted it, pay, and choose pickup or delivery on their own. That tied up a staff member during the busiest part of the day.

What we set out to do

Goals

  • Put the entire menu online in a form people can order from directly, not a PDF they have to pinch and zoom
  • Handle pickup and delivery through one checkout instead of two separate systems
  • Let the restaurant change prices, add specials and mark items sold out without calling a developer
  • Keep the whole flow fast and thumb-friendly on a phone, which is where most food ordering starts and ends
  • Give the kitchen a clear, consistent ticket for every order that comes through

Strategy

Approach

We built the ordering system rather than renting a third-party ordering portal, so the menu, the checkout and the branding stay under the restaurant’s control and orders are not routed through a marketplace that takes a cut of every ticket. The menu lives as structured data — items, option groups, prices, availability — so a single edit in the admin updates the storefront, the cart and the kitchen ticket at the same time.

Design decisions

  • The site opens on food. A visitor lands on the menu rather than a hero slider, and is a couple of taps from a filled cart.
  • Item options — bread, cheese, toppings, size — are plain choices with the price change shown as you make them, so the total at checkout is never a surprise.
  • Pickup or delivery is chosen early in the flow, because it changes the address fields, the timing language and the total. Asking at the end forces people to redo work.
  • Sold-out items stay visible but clearly disabled instead of disappearing, so regulars can see the item still exists rather than assuming it was dropped from the menu.
  • Type and photography are sized for one-handed reading on a phone at arm’s length, which is the real condition someone orders lunch in.

Features

What we built

  • Full digital menu with categories, item detail pages, and per-item option groups for bread, cheese, toppings and sizes
  • Cart and checkout that handles both pickup and delivery, including address capture and a delivery-area check before payment
  • Admin menu management — add and edit items, adjust prices, reorder categories, and toggle availability without touching code
  • Store hours and an open/closed state driven from the admin, so the site stops taking orders when the kitchen is closed
  • Order confirmation for the customer and a structured order ticket for the kitchen, both generated from the same order record
  • Mobile-first ordering flow built to stay usable on a mid-range phone and a weak connection
  • Server-rendered menu pages with structured business and menu data, so search engines and AI assistants can read what the restaurant sells and when it is open

Technology

Next.jsReactTypeScriptTailwind CSSFramer MotionNode.jsNeon PostgresVercel

Where it landed

Outcome

Katcha Steak now has an ordering channel it owns. A customer can browse the menu, configure a sandwich, pay, and choose pickup or delivery without speaking to anyone, which frees the counter during a rush. Because the menu is managed from the admin, the team runs specials and marks items sold out themselves. The platform launches alongside the restaurant’s online ordering rollout.

Services delivered on this project

Have a project like this?

Tell us what you are building. We will reply with a scoped proposal — timeline, approach and pricing — so you can make a decision with real information.