Coagro ID
Grupo Coagro's access-management portal in Angular: managers register employees and choose which apps and which Winthor branches each one can use, on Supabase Auth with RLS and an Edge Function that keeps the service key server-side.

// Overview
Grupo Coagro's access-management web portal: managers register employees — directly or from the Winthor employee records — and choose which apps, with which role and in which ERP branches, each one can use.
// The challenge
With several apps on the same Supabase, each employee's access — which app, which role, which branch — needs a single place. And creating users requires the service key, which must never reach the browser.
// The solution
Zoneless Angular 21 with Signals and a feature-first architecture. Admin operations go through an Edge Function that requires a JWT and the access-management permission — only it uses the service key — and the build aborts if the public key is actually the service key. Branch access is saved as a diff, so a partial failure never revokes all of someone's access, and the migrations inspect the policies before touching the tables mirrored from Winthor.
My role
Lead developer: 38 of 53 commits, in August 2026. A Grupo Coagro system.
Tech stack
// Screens



// Outcome and evidence
- unit tests (Jest)
- 205
- E2E tests (Playwright)
- 23