A comprehensive MERN stack application designed to analyze university course difficulty, predict student workload, and foster academic collaboration through gamification and social learning.
- Workload Forecasting: AI-driven models to predict expected weekly hours based on historical data.
- Difficulty Predictor: Regression algorithms to estimate course difficulty relative to student GPAs.
- Sentiment Analysis: NLP-powered insights from course reviews.
- XP & Leveling System: Earn XP for contributing reviews and helping peers (Novice -> Oracle).
- Leaderboards: Monthly top contributor rankings.
- Achievement Badges: Unlock "Pioneer", "Helper", and "Dean's List" badges.
- Real-Time Discussions: Socket.io-powered chat channels for every course.
- Peer Upvoting: "Helpful" tags and reputation systems.
- Study Buddy Finder: Matchmaking based on study habits and schedules.
- RBAC 2.0: Granular Role-Based Access Control for students, faculty, and admins.
- Audit Logs: Immutable records of administrative actions.
- Honeypot Protection: Advanced security against bot interactions.
Frontend
- Framework: React (Vite)
- Styling: TailwindCSS, "Ultra" Glassmorphism UI
- Animation: Framer Motion
- Data Viz: Recharts
Backend
- Runtime: Node.js
- Framework: Express.js
- Database: MongoDB Atlas
- Real-time: Socket.io
-
Clone the repository
git clone https://github.com/cheran-hacker/Student_Difficulty_Course_Analyzer.git cd Student_Difficulty_Course_Analyzer -
Install Dependencies
# Server cd server npm install # Client cd ../client npm install
-
Environment Setup Create a
.envfile in theserverdirectory with your credentials (seeDEPLOYMENT.mdfor details). -
Run the Application
# Run both client and server concurrently (if configured) or separate terminals: # Terminal 1 (Server) cd server npm start # Terminal 2 (Client) cd client npm run dev
This project is licensed under the MIT License - see the LICENSE file for details.