Skip to content

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.

License

Notifications You must be signed in to change notification settings

Ahmed-Maher77/EduConnect___Online-Learning-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

EduConnect – online learning management system (Full-Stack)

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.


🌐 Live Preview

👀 Watch Live Demo: https://educonnect-chi.vercel.app


🎥 Demo Video

📺 Watch the Demo on LinkedIn: coming soon


💻 Used Technologies

Frontend

  • 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.

Styling

  • Tailwind CSS – Utility-first CSS framework for responsive and customizable design.
  • SASS/SCSS – Structured and maintainable styling with variables, nesting, placeholders and mixins.

Backend

  • 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.

Development Tools

  • Vite – Fast build tool and development server.
  • ESLint + TypeScript ESLint – Code quality and linting.

Hosting

  • Deployed on Vercel for fast, reliable hosting.

✨ Key Features

👨‍🏫 For Teachers

  • 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

👨‍🎓 For Students

  • 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

🛠️ For Administrators

  • 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

🌍 Platform-Wide Features

  • 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

📥 Installation Instructions for Local Setup

  # 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

📬 Contact & Contribution

Contributions, suggestions, and bug reports are welcome. Feel free to open issues or pull requests.


⭐ Support

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!

About

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.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages