Costhub
From September 2025 to September 2026 I was the Technical Lead of Costhub, a cost management platform for restaurant and hospitality groups, built for a client. The part we delivered is the admin environment: the place where the operators of each business enter and check the data that a separate customer-facing app then turns into daily figures.
It covers turnover, payroll and labour cost as separate KPIs, invoices with automatic price suggestions, a shared registry of suppliers and products, and food cost and inventory audits. The food cost audit calculates recipe cost to the cent and expands nested batch recipes into their real ingredients, so the cost of a dish matches what the kitchen uses. Access is controlled per store and per module, with view and edit rights and a store admin role, and that model was migrated on the live system.

The panel works in Greek and English, has a dark mode and installs as a progressive web app.
Architecture
The FastAPI backend and the Next.js frontend (React 19, Tailwind, on Vercel) are separate deployments, and the frontend's API types are generated from the FastAPI OpenAPI schema instead of being written by hand. The API runs on Railway with PostgreSQL and Alembic migrations. Longer jobs go through Redis to Celery workers outside the request, so the panel stays responsive while they run, and Celery Beat schedules the nightly ones. Email goes out through SendGrid and uploaded invoices and images are stored on Bunny.
Sign-in goes through the API to Supabase Auth, which keeps passwords out of our own code, and the API enforces the per-store permissions on top of it. Work was delivered in paired milestones, each one an API change and the matching UI change, reviewed together.
See the full project at mycosthub.com.