Scaling a Student Platform Used by 70% of Medical Students
Platform adopted by ~70% of the medical student body (1000+ monthly users) centralizing 300+ academic resources and evolving into the main academic hub for the community.
Overview
Designed and built a full-stack academic platform used by the majority of medical students to access study materials, past exams, and academic resources. The system organizes the entire medical curriculum (43 subjects) into a structured navigation model and provides tools for administrators to manage materials efficiently. Originally launched during a student election campaign, the platform evolved into the primary resource hub for the student community.
Problem
Before the platform existed, study materials were fragmented across Facebook posts, WhatsApp groups, Telegram chats, and private drives. Students struggled to locate specific documents and often paid for materials that were already freely available. The university did not provide any centralized repository, creating constant friction when searching for academic resources.
Constraints
- Initial version had to be built in under 2 weeks during an active student election campaign.
- Extremely limited operational budget.
- System needed to be manageable by non-technical administrators.
- Infrastructure costs had to remain minimal despite growing content.
- Fast navigation and search engine visibility were critical.
Approach
The original platform was built using Astro with a static-first architecture optimized for SEO and navigation speed. As the project grew and new interactive features were required, I migrated the system to a full-stack architecture using Next.js while preserving the performance characteristics of the original system.
Key Decisions
Static-first architecture for academic navigation
The academic hierarchy (year → subject → professor → exam → material) changes very rarely. Implementing this structure statically allowed extremely fast navigation while minimizing backend requests.
- Fully dynamic database-driven navigation
- Traditional CMS taxonomy
Migration from Astro to Next.js full-stack architecture
As the platform expanded with new interactive features such as dashboards, messaging, and administrative tools, a full-stack framework allowed easier backend logic management and better long-term scalability.
- Continue extending Astro with additional server endpoints
- Move to a backend-heavy architecture with separate API services
External storage for documents
Study materials are stored on Google Drive instead of the application server. This keeps hosting costs minimal while allowing hundreds of documents to be served without bandwidth limitations.
- Self-hosted storage
- Cloud object storage (S3 or similar)
Backend powered by Supabase
Supabase provides authentication, database, and real-time features with minimal infrastructure overhead, enabling rapid feature development for a solo project.
- Self-hosted PostgreSQL with custom API
- Firebase
Tech Stack
- Next.js
- React
- Supabase
- WebSockets
- Vercel
- Google Analytics
- Google Search Console
Result & Impact
- ~70% of medical studentsAdoption
- 1000+ active usersMonthly Users
- 300+ academic materialsStudy Resources
- 43 subjectsSubjects Covered
- 50+ pages indexed by GoogleIndexed Pages
The platform became the main academic hub used by the medical student community. By consolidating materials that were previously scattered across multiple channels, students can now quickly locate resources and avoid paying for documents that are already available.
Learnings
- Static-first architectures can scale surprisingly well when domain structures are predictable.
- Migrating architecture is easier when the original system separates navigation from dynamic content.
- Early decisions that minimize infrastructure cost allow projects to grow organically.
- Platforms built for real communities evolve faster than typical side projects.
Platform Evolution
The project evolved through three major technical stages:
CLI prototype
↓
Astro static-first platform
↓
Next.js full-stack system
Each stage responded to the growing needs of the platform and the student community using it.
The CLI prototype initially allowed administrators to manage materials from the command line.
The Astro version introduced a fast static interface optimized for browsing academic resources.
The current Next.js version supports more complex backend logic and interactive features.
Core Navigation Model
The platform organizes academic materials using a hierarchical structure:
year
└ subject
└ professor
└ exam
└ material
This model makes it possible to browse the entire curriculum without relying on complex search queries.
Features Added Over Time
As the platform matured, several additional services were introduced:
- real-time student chat
- private admin dashboard
- study material management tools
- study room reservation system
- lab coat rental management
- custom search engine inspired by Algolia
Links
Live platform
www.megaloblastos.com
Current repository
https://github.com/AndresEduardoRA/cli-megaloblastos-archived