This is a Complete E-Learning System where the users can create their account and enroll in the courses. The courses contain the live chat feature where the students can learn while chatting with their fellow mates.
Highlights:
- The web app contains live chat feature with seprate room for each course.
- It contains low latency database connections and CRUD queries for better performance.
- The Web App is completely mobile responsive.
- It contains state of the art User Authentication System to handle user data and encrypt the passwords using the internal bcrypt hashing and salting methodology.
- Google OAuth2.0 Authentication Integrated.
- Socketio
- HTML
- CSS
- JavaScript
- Flowbite
- Tailwind
- Font Awesome
- Node.JS
- Socketio
- MongoDB
- Redis
Following Node Modules are used:
- dotenv - for securing api keys
- uniqid - for generating unique ids
- express - for server side logic
- body-parser - for parsing the body data
- mongoose - for using mongodb effeciently
- express-session - for cookie sessions
- passport - for authentication
- passport-local-mongoose - passport plugin for mongoose
- passport-google-oauth20 - passport auth strategy for google authentication
- mongoose-findorcreate - a utility mongoose function
- path - a utility module to handle paths in node server
- http - to handle http requests and server
- socketio - socketio plugin for live chat system
- redis - for database cache
Feel free to fork it, star it, or send pull requests.