Prereq Pilot is a full-stack web platform that helps students evaluate academic eligibility for programs (e.g., nursing, pre-health) by matching completed coursework against institution-defined prerequisite requirements.
This document outlines the technologies used, architectural decisions, and the rationale behind them.
- Framework: Next.js (App Router)
- Language: TypeScript
- Backend Style: Serverless (API routes / Server Actions)
- Database: Supabase (PostgreSQL)
- Authentication: Supabase Auth
- Hosting: Vercel
- Infrastructure Pattern: Role-based, multi-tenant SaaS
- App Router for routing and layouts
- Server Components for data fetching
- Client Components for interactive UI
- API routes / Server Actions for backend logic
- End-to-end type safety
- Shared types between frontend and backend
- Reduced runtime errors and clearer contracts
- Tailwind CSS for utility-first styling
- Optional: shadcn/ui for accessible component primitives
Used as the primary backend platform:
- PostgreSQL database
- Authentication & session management
- Row Level Security (RLS)
- Storage (future: PDFs, CSV uploads)
Relational schema supports:
- Students and transcripts
- Institutions and course catalogs
- Programs and versioned prerequisite requirements
- Scenario simulations (what-if GPA calculations)
- Role-based institution administration
- Supabase Auth (email/password + OAuth ready)
- Row Level Security (RLS) enforces:
- Students only access their own data
- Institution admins manage only their institution content
- Public read access to published programs
- Implemented using Next.js API routes or Server Actions
- Responsibilities include:
- GPA calculations
- Requirement matching
- Scenario simulations
- Program eligibility evaluation
- ESLint – code linting
- Prettier – formatting
- GitHub Actions (optional) – CI/CD
- Jest / Playwright (planned) – testing
- Frontend + API: Vercel
- Database + Auth: Supabase
- Environment Variables: Managed via Vercel & Supabase dashboards
This stack was chosen for:
- Fast iteration and MVP velocity
- Minimal infrastructure overhead
- Full TypeScript coverage
- Clear upgrade path to a production SaaS platform
- Stripe billing & subscriptions
- Background jobs (PDF exports, batch imports)
- Course equivalency mapping between institutions
- Advanced analytics & reporting