π An education app for students that offers interactive lessons, quizzes, study tools, and resources to help students for improving their academic grades.
- π± Mobile friendly
- π Content Management System (CMS)
β οΈ Robust error handling- πΈ File upload functionality
- π Authentication and Authorization
- π MongoDB database and Mongoose ORM.
- π²Payment system integration
# Clone repo
$ git clone https://github.com/MahmoudSerag/education-app.git
# Access repo director
$ cd education-app
# Install required dependencies
$ npm install# Import data to the database
$ npm run data:import
# Destroy data from the database
$ npm run data:destroy# development
$ npm run start
# watch mode
$ npm run start:dev
# production mode
$ npm run start:prod-
PORT: Enter port number (e.g.3000). -
MONGO_URI: Enter your MongoDB connection URL (e.g.mongodb+srv://<username>:<password>@<cluster name>.0k0vtqz.mongodb.net/?retryWrites=true&w=majority) -
NODE_ENV:production||development -
CLIENT_DOMAIN_DEV: Enter client domain url (e.g.http://localhost:5000) -
CLIENT_DOMAIN_PRODUCTION: (e.g.https://www.example.com) -
JWT_EXPIRES_IN: Enter expiration time (e.g.2d) -
JWT_SECRET_KEY: Enter your secret key (e.g.secret) -
COOKIE_EXPIRES_IN: Enter expiration time (e.g.2days) -
PASSWORD_RESET_TOKEN_EXPIRES_IN: Enter expiration time (e.g.2) -
EMAIL_HOST: smtp.gmail.com -
EMAIL_SENDER: Enter your sender email -
EMAIL_PASSWORD: Enter your password of sender email -
SWAGGER_SERVER_DEV: (http://localhost:3000) -
SWAGGER_SERVER_PRODUCTION: (https://e-learning-j8bz.onrender.com/) -
SWAGGER_TITLE: (e.g.Education-App APIs Documentation) -
SWAGGER_DESCRIPTION: (e.g.Discover our concise and professional Swagger documentation, providing a comprehensive overview of our APIs)
|
Mahmoud Serag π» |

