EduConnect is an online learning management system that enhances classrooms with interactive lessons, quizzes, progress tracking, real-time chat, and continuous feedback to create a dynamic learning experience. It also offers multilingual support (Arabic & English) and light/dark theme options for accessibility and personalization.
👀 Watch Live Demo: https://educonnect-chi.vercel.app
📺 Watch the Demo on LinkedIn: coming soon
- React.js – Modern SPA framework for building dynamic, interactive, responsive interfaces.
- TypeScript – Type-safe development for scalability and reliability.
- Redux Toolkit – Efficient state management across the app.
- React Router DOM – Seamless client-side routing and navigation.
- Framer Motion – Smooth animations and transitions.
- Formik + Yup – Robust form handling and validation.
- Swiper – Modern touch slider for lessons and media.
- FontAwesome – Rich icon set for UI enhancement.
- Tailwind CSS – Utility-first CSS framework for responsive and customizable design.
- SASS/SCSS – Structured and maintainable styling with variables, nesting, placeholders and mixins.
- Node.js + Express.js – RESTful API server for business logic and routing.
- MySQL2 – Relational database management.
- JWT (jsonwebtoken) – Secure authentication with token-based sessions.
- Bcrypt – Password hashing for strong security.
- Vite – Fast build tool and development server.
- ESLint + TypeScript ESLint – Code quality and linting.
- Deployed on Vercel for fast, reliable hosting.
- Create and manage classes with unique IDs, images, and statistics
- Approve or reject student join requests
- Build advanced quizzes:
- Timed/untimed, single/multiple answers
- Add hints, explanations, images, videos, code, and equations
- Export quizzes with answers to PDF/print
- Upload and manage lessons (videos, PDFs, articles, references)
- Manage real-time classroom chat (ban/remove users)
- Track student performance: quiz results, lesson activity, and reactions
- Receive ratings for classes and build a professional teacher profile
- Multi-step registration with OTP, social logins, and third-party login
- Join classes by ID/name with teacher approval
- Take interactive quizzes with progress tracking
- Review past quizzes with answers, feedback, and downloadable PDFs
- Engage with lessons through comments, reactions, and favorites
- Participate in real-time class chat (edit/delete own messages)
- Rate and review teachers and classes
- Switch between English and Arabic language options
- Manage teachers, students, classes, quizzes, and lessons
- Role management: Main Admin vs Assistant Admin
- Handle complaints and user feedback
- Access platform-wide analytics and reports
- Security: JWT authentication & bcrypt password hashing
- Themes: Light/Dark mode support
- Multilingual: English and Arabic
- PWA: Installable on desktop and mobile
- Notifications: Real-time alerts for quizzes, results, join requests, and chats
- Analytics: Flowcharts for students, teachers, classes, and lessons
- Rich Text Editor: For lessons and articles
- Advanced Filtering: Pagination for teachers, classes, and lessons
- Best Teachers Section: Highlight top-rated instructors
- Accessibility: WCAG 2.1 AA compliant responsive design
# Clone the repository
git clone https://github.com/Ahmed-Maher77/EduConnect___Online-Learning-Management-System.git
cd EduConnect___Online-Learning-Management-System
# Run frontend (Vite)
cd frontend - clientSide
npm install
npm run dev
# Run backend (Node.js + Express)
cd backend - serverSide
npm install
npm start- 🧑💻 Portfolio: https://ahmedmaher-portfolio.vercel.app/
- 🔗 LinkedIn: https://www.linkedin.com/in/ahmed-maher-algohary
- 📧 Email: [email protected]
Contributions, suggestions, and bug reports are welcome. Feel free to open issues or pull requests.
If you found this project helpful or inspiring, please consider giving it a ⭐. Your support helps me grow and share more open-source projects like this!