Web Dev / Personal Project
TaxTraq
Philippines-focused tax-compliance SaaS helping accounting agencies manage staff, clients, filings, and deadlines without spreadsheets.

How it works
React 19, Vite, and TypeScript power the marketing landing, auth, agency dashboard, client portal, and admin views, with Tailwind CSS, Zustand, TanStack Query, and React Router. Express 5 serves a versioned REST API under /api/v1 with Zod validation and a controller-service-model-Prisma flow backed by Neon PostgreSQL. Stripe handles agency subscription billing through checkout sessions, verified webhooks, plan changes, cancellation, and a customer portal across STARTER, PRO, and AGENCY tiers. JWT http-only cookies with rotating refresh sessions, role-based access, and agency tenant isolation guard the data, while Resend handles transactional email.
Capabilities
- Marketing landing with auth, invite acceptance, and password recovery
- Agency dashboard for clients, employees, filings, tasks, and reminders
- Client portal for filings, tasks, uploads, and settings
- Stripe subscription billing with checkout, webhooks, and portal
- Role-based routes with agency tenant isolation
- JWT cookie auth with rotating refresh and reuse protection
- Zod-validated REST API persisted with Prisma on Neon PostgreSQL
Built with
- React
- TypeScript
- Tailwind CSS
- Express
- Node.js
- PostgreSQL
- Neon
- Prisma
- Stripe
- Vitest