Server: Node, Express, MongoDB, Mongoose, JWT
Modules: bcryptjs,express-validator,helmet,hpp,compression,hpp,toobusy-js,xss-clean
- Authentication & Authorization
- CRUD operations
- Routes Protection
- Subjects
- ClassLevels
- AcademicYear
- AcademicTerm
- YearGroups
- Exams
- Questions
- Programs
- Logged Users (Admin,Teacher,Student)
- Permissions (Admin,Teacher,Student)
- Log out if the password is changed
- Search
- Pagination
- More to explore!
Clone the project
git clone https://github.com/aashahin/Wadaq-RESTful-API-LMS.git
Go to the project directory
cd my-project
Install dependencies
npm install
Start the server
npm run server
To run this project, you will need to add the following environment variables to your config.env file
PORT=5000
NODE_ENV=development
BASE_URL=https://example.com
MONGO_URL=mongodb://localhost:0000/ecommerces
SECRET_KEY='as#ewronh$%@65*-'
EXPIRESIN=90d
Some endpoints may require authentication for example. To create a create/delete/update, you need to register your API client and obtain an access token.
The endpoints that require authentication expect a bearer token sent in the Authorization header
.
Example:
Authorization: Bearer YOUR TOKEN
POST /api/v1/auth/staff/admin/signup
The request body needs to be in JSON format.
POST /api/v1/staff/admin/login
Parameter | Type | Description | Required |
---|---|---|---|
authentication |
string |
Your token | no |
email |
string |
Your email | yes |
password |
string |
Your password | yes |