CraveUp is a restaurant ordering and management platform built at Crave. It spans customer web ordering, a merchant business-manager dashboard, a React Native order-manager app, and shared Node.js services for orders, menus, payments, live updates, and provider events.
On the customer side, the web ordering flow covers menu browsing, cart, fulfillment selection, checkout, payment methods, discounts, tips, fees, and order creation. The flow supports several restaurant fulfillment patterns, including takeout, delivery, table-side, room service, ASAP orders, and scheduled orders.
On the merchant side, the business manager gives operators the surfaces needed to run the store: dashboard analytics, order list/detail/export, customer views, discounts, locations, team/API-key access, menu operations, item availability, store hours, fulfillment settings, and Stripe account/subscription flows.
For in-store staff, the React Native order-manager app handles the operational loop: active orders, scheduled orders, order history, live Socket.IO order updates, confirm/ready/complete/cancel/refund paths, item availability, order pause/resume behavior, and receipt printing through supported printer integrations.
Underneath, the platform is held together by shared Express/MongoDB services: public ordering APIs, admin APIs, order lifecycle routes, receipt image generation, Socket.IO merchant/location rooms, Stripe payment and account surfaces, and generic provider/webhook integrations. The proof focus is the system breadth: one commerce platform across customer, merchant, staff, and backend surfaces.