Back to projects
SaaS
CodeMyFYP Academy
Multi-tenant EdTech SaaS platform listed on the AICTE National Internship Portal
Next.jsReact.jsNode.jsExpress.jsPostgreSQLMongoDBRedisJWTPhonePeGitHub Actions
Overview
A full-scale multi-tenant EdTech SaaS platform serving students, educators, recruiters, and administrators across universities affiliated with VTU, Bangalore University, and Mysore University.
Problem
Universities and students lack a unified platform for course delivery, internship placement, certification, and recruiter engagement — forcing institutions to stitch together spreadsheets, email, and disconnected tools.
Solution
A single platform with five distinct role-based experiences (Students, Mentors, Recruiters, Faculty, Administrators), LMS modules for courses/assessments/certifications, and an end-to-end internship and placement pipeline with integrated payments.
Architecture
- 1Next.js frontend (App Router) with role-filtered navigation and ISR caching for course content
- 2Node.js/Express backend exposing REST APIs for course management, admissions, and internship tracking
- 3PostgreSQL as system of record; MongoDB for flexible content/document storage
- 4Redis for caching hot queries and session data
- 5RBAC enforced at the API layer for five distinct roles with strict data isolation
- 6PhonePe payment gateway integrated with idempotent APIs and webhook-based confirmation for subscriptions and course purchases
Technical Challenges
- Designing a schema and API layer that supports five different role types with different permissions without duplicating logic per role.
- Building idempotent payment handling with webhook retry logic and reconciliation to avoid double-charging or missed confirmations.
- Keeping the platform fast for content-heavy course pages while data changes frequently — solved with ISR and targeted cache invalidation.
Results
- Officially listed on the AICTE National Internship Portal, validating platform credibility for engineering students.
- Automated student onboarding, application processing, notifications, and certificate generation — eliminating manual operations.
- Reduced API response times through Redis caching, indexed PostgreSQL queries, and lazy-loaded assets.