CBPFOOD · Food safety audits
Platform for food safety (GMP) audits and contract compliance in food services, in production.
- Client
- CBPFOOD
- Role
- Full stack developer
- Period
- Oct 2026 – present
- Stack
- NestJS · Prisma · MySQL · Vue 3 · TypeScript · PrimeVue · Tailwind CSS · Railway · Vercel
Visit app.cbpfood.cl
The code is private to protect client confidentiality.
Problem
CBPFOOD audits Good Manufacturing Practices (GMP) in restaurants, cafeterias, schools, clinics and mining camps. Clients with catering contracts also needed to check on site that the operator met the contract (staffing, schedules, documents, meal counts and maintenance) and record it in a binding audit report.
Solution
- I built the contract compliance module with NestJS, Prisma and MySQL on the backend and Vue 3 with TypeScript on the frontend: a contract per site with managers, key staff, schedules and SLAs, KPIs, a penalty table in UF, required documents with expiry dates, and assets.
- I built the on-site contract audit, which compares what is actually there with what was agreed and must be completed before the GMP audit.
- I built the audit report with two on-site signatures, a SHA-256 seal, a QR code and a PDF.
- I wrote a tender document reader that runs in the browser, without AI: it reads PDF, Word or an Excel template, creates the sites and pre-fills the contract.
- I closed security gaps: role and site authorization across the whole backend, helmet, login rate limiting, strict input validation and evidence files behind an authenticated proxy.
- I redesigned the whole interface: light and dark themes with AA contrast, a visual profile per industry, bottom navigation on phones and an installable app.
- I deployed to Railway and Vercel with SQL migrations rehearsed on a copy of the database, a prior backup and a rollback plan.
Outcome
It is in production at app.cbpfood.cl. From a 160-page tender document, the reader creates the sites and pre-fills schedules, staffing, 27 KPIs and 10 penalties. The backend has more than 100 automated tests.
More screens