A production-ready restaurant management platform featuring multi-location support and granular role-based access control. Implements relational data isolation via GraphQL to ensure secure and efficient POS operations.

nextjs
NEXT.JS
react
REACT
nodejs
NODE.JS
express
EXPRESS.JS
graphql
GRAPHQL
postgres
POSTGRESQL
redis
REDIS
docker
DOCKER
CategoryENTERPRISE
TimelineNov 2025 – Dec 2025
RoleLead Developer
StatusCompleted
01

Executive Summary

Managing multi-location restaurants requires strict data isolation and complex role-based access control.

Foody leverages a modern GraphQL API to handle complex relationships across branches, ensuring managers have full control while staff enjoy a fast experience.

02

Core Infrastructure

Spec 01

POS Interface

High-performance ordering system for restaurant staff.

Spec 02

Granular RBAC

Multi-tier access control with restaurant-level scoping.

Spec 03

Real-Time Lifecycle

Live order tracking via WebSocket subscriptions.

Spec 04

Data Integrity

Strict tenant isolation and PostgreSQL reliability.

03

Design Philosophy

I wanted to solve the 'Nick Fury' scenario: managing multiple locations with distinct staff roles while ensuring Managers only see their own restaurant's data.

The Breakthrough

Implementing a GraphQL-based Relational Access Control system where the user's 'Restaurant ID' is baked into the permission layer, automatically scoping every query.

04

Technical Architecture

Enforcing strict data isolation at the API layer (Bonus Objective) while maintaining high performance for real-time POS operations.

Engineered With

  • Next.js 15
  • Node.js
  • Express
  • GraphQL (Apollo)
  • PostgreSQL (Prisma)
  • Redis
  • Docker

Performance Goal

  • Real-time POS sync via WebSockets
  • High-concurrency order processing
  • Optimized GraphQL query performance

System Integrity

  • Strict restaurant-level data isolation
  • Granular role-based access control
  • Atomic database transactions for orders
Lucide Note
Up Next

Lucide Note

A secure, multi-tenant note-taking application designed for organizations with strict data isolation and tiered subscriptions. Features rich text editing, row-level tenant filtering, and optimistic UI updates for a seamless experience.

View