2026
Sana
A bilingual personal-injury companion app. Full-stack, auth, internationalized.
The problem
Personal-injury clients are anxious and underinformed, and many navigate the process in Spanish while the paperwork happens in English. They need a calm, bilingual companion that explains where their case stands and what happens next.
What I built
A bilingual (EN/ES) companion app built on Next.js and shadcn/ui, internationalized with next-intl. Supabase handles authentication with row-level security, so each client can only ever reach their own data.
Every screen referenced here is anonymized and uses dummy content. No real client, case, or personal data appears anywhere in this case study.
My role
Full-stack design and build: the information architecture, the interface, the auth and data-access model, and the bilingual content structure.
Outcomes
Row-level security is enforced in Postgres rather than trusted to the UI, so a client can only ever reach their own records. The i18n structure keeps full parity across both languages.