Logo

This map reflects how I design, build, and reason about systems

Two-sided SaaS architecture

EZinvoices is built as a two-sided SaaS application. The admin dashboard is the core operating system for business owners. The client portal is the external-facing layer where clients can view invoices, check status, and complete payment. The system uses Next.js for the application layer, Supabase for authentication, data storage and row-level security, and Stripe for subscription billing.

Components

Admin dashboard for users managing clients and invoices

Client portal for invoice viewing and payment

Authentication and onboarding flow

Invoice and client data models

Dashboard and reporting layer

Stripe subscription and billing integration

Supabase row-level security for account data isolation