๐ Building My Online Exam Portal: A Developerโs Journey (Work in Progress!) ๐
Over the last few weeks, Iโve been deeply engaged in building an Online Exam Portal โ a platform crafted to simplify exam creation, participation, and result tracking for students and admins.
๐ก The Vision:
To create a full-stack application where:
๐งโ๐ Students can take objective & subjective exams, see instant results, and track their history
๐งโ๐ผ Admins can create exams, view submissions, and manage everything in a streamlined dashboard
๐ ๏ธ The Tech Stack Evolution:
Choosing the right stack was the hardest part.
Initially, I explored Firebase and Supabase for their real-time capabilities and plug-and-play setup. However, I quickly hit walls:
๐ Authentication quirks and limitations in customization
๐ฆ Difficulty modeling data for scalable exam structures
๐ Too much reliance on vendor-specific architecture
This led to multiple revisions and eventually a complete pivot toward a more flexible and developer-controlled stack:
Frontend: React.js + Vite โ๏ธ
Backend: Node.js + Express.js ๐
Database: MongoDB (left Firebase & Supabase behind!) ๐
State Management: Redux Toolkit ๐พ
UI Library: Material UI (for sleek, responsive design) ๐จ
๐ Core Features So Far:
โ
Secure authentication with role-based access (student/admin)
โ
Objective & Subjective exam creation
โ
Real-time exam participation and scoring
โ
Detailed performance insights and analytics
โ
Exam history tracking (locally and persistently)
โ ๏ธ Challenges I Faced:
Tech Stack Paralysis: Picking between ease (Firebase) vs. flexibility (MongoDB & custom backend)
Auth Integration: Handling secure, custom login flows was harder than anticipated
Data Migration: Shifting from Supabase/Firebase to MongoDB was painful, but 100% worth it
State Syncing: Redux taught me a lot about clean state management across complex UI flows
โณ Still a Work in Progress!
Iโm refining UI/UX, adding advanced features (like scheduling & result analysis), and aiming for a polished MVP soon.
This has been an advantageous learning experience, and Iโm excited to keep pushing forward!
๐ https://github.com/Siddharth2k14/online-exam-portal
Letโs connect if youโre building something similar, interested in collaborating, or just want to nerd out over dev stuff ๐
For further actions, you may consider blocking this person and/or reporting abuse
Top comments (0)