OCA.DEV
arrow_back ALL PROJECTSTÜM PROJELER

respos

language resposapp.com CREATOR & LEAD DEVELOPER

A multi-tenant SaaS point-of-sale system for restaurants. One backend serves many restaurants, each with isolated data and self-service sign-up, and module access is granted per restaurant so two tenants on the same deployment can see different features. It runs in the browser on tablets, phones and POS terminals. Restoranlar için multi-tenant SaaS satış noktası sistemi. Tek backend birçok restorana hizmet veriyor; her biri kendi izole verisiyle ve kendi kaydını açarak. Modül erişimi restoran bazında verildiği için aynı kurulumdaki iki tenant farklı özellikler görebiliyor. Tarayıcı üzerinden tablet, telefon ve POS terminalinde çalışıyor.

The respos order screen on a phone, with an open table bill and its total

Tableside ordering: a server opens the table, adds items and closes the bill without walking back to a terminal. Product imagery from resposapp.com — the device screens are the real interface, the surroundings are marketing photography. Masa başında sipariş: garson masayı açıyor, ürün ekliyor ve terminale dönmeden adisyonu kapatıyor. Görseller resposapp.com'dan — cihaz ekranları gerçek arayüz, çevresi tanıtım fotoğrafı.

One backend, many restaurantsTek backend, çok restoran

Every request carries a tenant, every query is scoped to it, and a restaurant can sign itself up without an operator touching anything. The layering is what makes that safe: tenant scoping lives in the service layer, so no route can reach the database without going through it. Her istek bir tenant taşıyor, her sorgu ona göre kapsamlanıyor ve bir restoran hiçbir operatör müdahalesi olmadan kendi kaydını açabiliyor. Bunu güvenli kılan şey katmanlama: tenant kapsamlaması servis katmanında yaşıyor, yani hiçbir route oradan geçmeden veritabanına ulaşamıyor.

Request path
routes→HTTP surface, validation, auth guard
services→business rules, tenant scoping
repositories→data access, one tenant at a time

What it does for a venueBir işletme için ne yapıyor

table_restaurantLive table plan — table state is the shared source of truth every device reads from.Canlı masa planı — masa durumu, her cihazın okuduğu ortak doğruluk kaynağı.
skilletKitchen display — orders land the moment they are taken.Mutfak ekranı — siparişler alındığı anda düşüyor.
inventory_2Recipe-based stock — selling a dish deducts its ingredients, not a line item.Reçete bazlı stok — bir yemek satılınca kalem değil malzemeleri düşüyor.
receipt_longShift and cash management, with the till reconciled per shift.Vardiya ve kasa yönetimi; kasa vardiya bazında mutabık kılınıyor.
gavelDiscount authorisation with an audit log — who discounted what, and on whose approval.Denetim kayıtlı indirim yetkilendirme — kim neye indirim yaptı, kimin onayıyla.
Node.js / Express React Expo / React Native JWT auth Multi-tenancy

In the roomSahada

SAME WEB CLIENT, ANY HARDWARE
The kitchen display system showing incoming orders on a wall-mounted screen
Kitchen display: preparation order is decided by the screen and not by shouting across a pass. Mutfak ekranı: hazırlık sırasını tezgâhın üstünden bağırış değil ekran belirliyor.
Live table plan on a tablet showing which tables are open
Live salon view on a tablet: which tables are open, and what each one owes. Tablette canlı salon görünümü: hangi masalar açık ve her birinin borcu ne.
The POS running in a browser on a counter terminal
Counter terminal: the same web client as the tablet and the phone, so a venue can use whatever hardware it already owns instead of buying a till. Tezgâh terminali: tablet ve telefondakiyle aynı web istemcisi; işletme yazarkasa almak yerine elindeki donanımı kullanabiliyor.