All work
Full-Stack Web Application
School of Sex Therapy Platform
A custom digital platform for an online education organization, combining a modern Next.js frontend with Supabase-powered backend functionality, authentication, applications, payments and student-related workflows.
- Next.js
- React
- TypeScript
- Supabase
- Vercel
- Stripe
- Email APIs
Overview
An online education organization needed to move beyond the limits of its original website and operate as a real platform: applications, enrollment, payments and student communication in one system.
Problem
The original implementation was built on Wix. It presented the organization well, but could not support custom application flows, structured student data, payment logic or automated communication.
Approach
The site was redeveloped as a Next.js application with a Supabase backend. Content and marketing pages were rebuilt for performance and SEO, while the operational parts of the business were modelled as data and workflows rather than static pages.
Key features
- Application and enrollment flow with structured submissions
- Authentication and role-aware access to student areas
- Payment integration with Stripe
- Transactional email for confirmations and notifications
- Analytics instrumentation for marketing and conversion tracking
- Content pages optimised for search and fast first load
Architecture
- 01Next.js frontend deployed on Vercel
- 02Supabase Postgres for application, enrollment and student data
- 03Row Level Security policies scoping access per user role
- 04Stripe for payments, email APIs for transactional messaging
- 05Webhooks connecting payment and application events to follow-up actions
Challenges
Migrating from a hosted website builder to a custom stack without losing existing content, search visibility or the day-to-day workflows the team already relied on.
Solution
The migration was staged: content and structure first, then the database schema and authentication, then payments and email. Each stage was deployed independently so the organization kept working throughout.
Results
- Application and payment steps handled inside one system instead of manual follow-up
- Student and application data stored in a queryable database rather than form inboxes
Screenshots
[Screenshots placeholder — project images can be added here]