An open API service indexing awesome lists of open source software.

https://github.com/ahmed-maher77/educonnect___online-learning-management-system

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.
https://github.com/ahmed-maher77/educonnect___online-learning-management-system

accessibility chatroom classroom-management educational-purposes express-js feedback-system interactive-lessons learning-experience learning-management-system light-dark-mode multilanguage-support mysql-database nodejs online-classes online-classroom progress-tracking quiz-application quizzes reactjs realtime-chat

Last synced: 28 days ago
JSON representation

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.

Awesome Lists containing this project

README

          

# 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](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

```bash
# 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
- 🧑‍💻 **Portfolio:** https://ahmedmaher-portfolio.vercel.app/
- 🔗 **LinkedIn:** https://www.linkedin.com/in/ahmed-maher-algohary
- 📧 **Email:** ahmedmaher.dev1@gmail.com

> 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!