[← back to projects]

[live]

Bar Ordering & POS

Online ordering and bartender point of sale

3 months

Online ordering and an offline-capable POS for a neighbourhood bar — tabs, split bills, shifts, and end-of-night reconciliation.

Bar Ordering & POS screenshot 1
Bar Ordering & POS screenshot 2

The problem

A local bar needed online ordering for pickup and a POS its bartenders could rely on during a busy night, including when the connection drops.

What I built

A public site with Stripe ordering, plus a React POS backed by an Express API with live sync between devices and an offline mode.

Core features

  • -Online ordering with pickup scheduling, tips, promo codes, and refunds
  • -Bartender POS with tabs, split bills, and menu add-ons
  • -Shifts and end-of-night reconciliation
  • -Live sync across devices and a staff screen
  • -Offline mode that keeps the POS working without a connection

Engineering highlights

  • -Offline-capable POS built on IndexedDB, so bartenders can keep working through a dropped connection
  • -Real-time updates between bartender devices over Socket.io
  • -End-to-end tests for auth, shifts, bill splitting, tabs, and refunds

Tech stack

ReactViteDexie (IndexedDB)Tailwind CSSNode.jsExpressPostgreSQLSocket.ioStripeDigitalOcean

Impact

  • -One system replacing separate tools for online orders and in-house tabs

Want something similar built?

Happy to talk it through — drop me a line.

[get in touch]