Skip to content

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.

Home screen of CBPFOOD · Food safety audits

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

Site contract: managers, schedules, penalties, documents and assets
Site contract: managers, schedules, penalties, documents and assets
On-site audit: actual staffing against the contract
On-site audit: actual staffing against the contract
Audit record with the GMP score and contract findings
Audit record with the GMP score and contract findings
On-site signatures and SHA-256 seal with a QR code
On-site signatures and SHA-256 seal with a QR code
Manager dashboard with a compliance traffic light
Manager dashboard with a compliance traffic light
Mining visual profile, in dark mode
Mining visual profile, in dark mode
Audit record on a phone
Audit record on a phone