Masterly is a modern, fast, and interactive learning platform that offers personalized paths to master skills. Built with the MERN stack and tailored for developers and learners seeking structure and engagement.
π Access it live here:: Masterly
Here's a quick look at the Masterly homepage
- π Secure Authentication (Email/Password + Google OAuth)
- π§ Interactive DSA Course with video lectures, quizzes, and coding problems
- π User Progress Tracking (concept-wise + topic-wise)
- π― Personalized dashboards with statistics & quick actions
- π§βπ« Instructor profiles & course ratings
- ποΈ Modular & scalable course structure (concepts β topics β content)
- π Adaptive Quiz System with anti-cheating measures
- π― Mock Tests and Course Assessments
- β±οΈ Timed Assessments with real-time monitoring
- π Detailed Performance Analytics
- π Retake Options with different question sets
- π₯οΈ Integrated Code Editor with syntax highlighting
- π Multi-language Support (Python, Java, C++, JavaScript)
- β Automated Test Execution
- π Problem-solving Interface
- π― Real-time Code Validation
- π Progress Visualization with charts and graphs
- π― Learning Path Recommendations
- π Performance Metrics and mastery scores
- π Study Time Tracking
- π Achievement System with badges and rewards
- π§ Personalized Learning Paths based on user progress
- π― Adaptive Content Recommendations
- π Smart Concept Sequencing
- π Intelligent Search across courses and concepts
- π Predictive Analytics for learning outcomes
Tech | Purpose |
---|---|
Next.js 15 | App Router + React 19 support |
Express.js | Backend API & Auth |
MongoDB Atlas | Data storage (Courses, Users) |
Mongoose | ODM for MongoDB |
Tailwind CSS | Styling and UI |
Zustand | Global state (auth) |
Vercel + Render | Deployment |
React 19 | Frontend Framework (UI/UX) |
TypeScript | Static typing, cleaner codebase |
Radix UI | Accessible component library |
OpenAI API | AI-powered recommendations |
JWT + Passport | Authentication & authorization |
Masterly/frontend/
βββ app/ # Next.js 15 App Router
β βββ dashboard/ # User dashboard & analytics
β βββ courses/ # Course browsing & enrollment
β βββ quiz/ # Quiz platform & assessments
β βββ coding-platform/ # Code editor & problems
β βββ learning-paths/ # AI-generated learning paths
β βββ admin/ # Admin panel
β βββ auth/ # Authentication pages
β βββ [other routes] # Profile, settings, help, etc.
βββ components/ # Reusable UI components
β βββ ui/ # Radix UI components (50+)
β βββ quiz-platform.tsx # Advanced quiz system
β βββ problem-solver.tsx # Coding interface
β βββ DSAQuizEngine.tsx # DSA-specific quiz engine
β βββ [other components] # Sidebars, auth guards, etc.
βββ lib/ # Utilities & API client
βββ hooks/ # Custom React hooks
βββ [config files] # Package.json, configs, etc.
Masterly/backend/
βββ src/
β βββ models/ # MongoDB schemas (12 models)
β β βββ userModel.ts # Comprehensive user model
β β βββ courseModel.ts # Course & content model
β β βββ [other models] # Progress, assessment, etc.
β βββ routes/ # API endpoints (12 routes)
β β βββ authRoutes.ts # Authentication
β β βββ courseRoutes.ts # Course management
β β βββ [other routes] # Quiz, admin, dashboard, etc.
β βββ controllers/ # Business logic
β βββ middlewares/ # Auth & validation
β βββ config/ # Configuration files
β βββ utils/ # Helper functions
βββ [config files] # Package.json, scripts, etc.
- Node.js 18+
- MongoDB Atlas account
- OpenAI API key (for AI features)
cd Masterly/frontend
npm install
npm run dev
cd Masterly/backend
npm install
npm run dev
# Frontend (.env.local)
NEXT_PUBLIC_API_URL=http://localhost:5000
# Backend (.env)
PORT=5000 //The port for your local Express server
MONGO_URI= // The connection string to your cloud database on MongoDB Atlas
JWT_SECRET=your_super_secret_and_long_string_for_jwt
CLIENT_URL=http://localhost:3000
# --- NEW OAUTH 2.0 VARIABLES ---
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
GOOGLE_CALLBACK_UR=http://localhost:5000/api/auth/google/callback
# --- EMAIL VARIABLES ---
# These are the credentials from your Mailtrap Sandbox inbox
EMAIL_HOST=
EMAIL_PORT=
EMAIL_USER=
EMAIL_PASSWORD=
EMAIL_FROM=
- Profile: Personal info, avatar, bio, social links
- Subscription: Plan details, billing, payment methods
- Stats: Study time, progress, achievements, streaks
- Preferences: Learning settings, notifications, privacy
- Enrollments: Course progress, certificates, ratings
- Content: Title, description, instructor, pricing
- Structure: Concepts, topics, videos, articles
- Stats: Students, ratings, completion rates
- Metadata: Tags, requirements, learning outcomes
- Quizzes: Questions, answers, explanations
- Tests: Mock tests, course assessments
- Progress: User attempts, scores, time tracking
- Analytics: Performance metrics, mastery scores
- JWT Authentication with secure token management
- Google OAuth 2.0 integration
- Password Hashing with bcrypt
- CORS Protection with whitelisted origins
- Input Validation with express-validator
- Anti-cheating Measures in quiz platform
- Rate Limiting on API endpoints
- Secure Cookie Management
- Next.js 15 with App Router for optimal routing
- React 19 with concurrent features
- MongoDB Indexing for fast queries
- Image Optimization with Next.js Image component
- Code Splitting and lazy loading
- CDN Integration for static assets
- Caching Strategies for API responses
- TypeScript for type safety
- ESLint for code quality
- Prettier for code formatting
- Input Validation on all forms
- Error Handling with proper logging
- API Testing with comprehensive endpoints
- UI Testing with component isolation
- Automatic deployments from Git
- Edge functions for API routes
- Global CDN for fast loading
- Environment variable management
- Automatic scaling based on traffic
- Health checks and monitoring
- SSL certificate management
- Database connection pooling
π Live Frontend: https://masterly-deploy-henna.vercel.app/
π Live Backend API: https://masterly.onrender.com
- Next.js Team for the amazing framework
- Vercel for seamless deployment
- MongoDB for reliable database
- OpenAI for AI capabilities
- Radix UI for accessible components
- Tailwind CSS for beautiful styling
Built with β€οΈ by the Masterly Team