← all work

production2026Beta

ChefMD Rx

reports, reviews and compliance for a nutrition practice

How does a dietitian practice prove its work — to clients, to auditors, to itself?

A web platform for diet consultations, personalised meal plans and wellness programmes, built for registered nutritionist-dietitians, coaches and their clients. On a team of eight I owned the reporting and compliance layer: what the practice can measure, who is allowed to see it, and how it is audited.

RoleFull-stack engineer
My partTeam of eight · my area: reports, reviews, notifications, refunds
Year2026
StatusBeta

What I did

Built with

Screens

The Healthy Project by Chef MD landing page: “Enjoy the Taste of Eating Right”, with a plate of salad, eggs and nuts.
Public landing page. Reports, reviews and the kitchen live in the practice dashboard.

Reports as contracts

Every report family, KPI and period preset is declared once in a shared @repo/api contracts package. The NestJS side dispatches on those types — a coordinator resolves the caller’s scope and returns 403 before any SQL runs, then a typed computer per family produces the payload. The Next.js side derives its catalogue from the same contracts, so a KPI added to the registry appears in the UI, the role checks and the PDF template without three separate edits.

Auditability

Exports are evidence. Each PDF goes through Gotenberg, and every export writes an audit-log row with the requesting user, scope, period and a hash of the file, so a report can be matched to exactly what was generated. The auditor review runtime is a state machine over review bundles: transitions, gates and claims are covered by tests, and the review’s outcome gates what the client can see of their Diet Rx.

Money

Refunds are a ledger, not a flag. A payment_refunds table with transactional writes, a tolerant backfill for historical rows, and a seed invariant that checks the ledger balances against refunded payments — so the finance reports can be trusted.