Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/richardmiruka/school-management-system
This is a School Management System built using NodeJS, MongoDB, ExpressJS, Mongoose, and RESTful API.
https://github.com/richardmiruka/school-management-system
express-middleware expressjs mongodb mongoose nodejs reactjs restful-api
Last synced: 8 days ago
JSON representation
This is a School Management System built using NodeJS, MongoDB, ExpressJS, Mongoose, and RESTful API.
- Host: GitHub
- URL: https://github.com/richardmiruka/school-management-system
- Owner: RichardMiruka
- License: mit
- Created: 2024-05-17T06:18:18.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-05-19T14:40:42.000Z (6 months ago)
- Last Synced: 2024-05-19T14:41:25.284Z (6 months ago)
- Topics: express-middleware, expressjs, mongodb, mongoose, nodejs, reactjs, restful-api
- Language: JavaScript
- Homepage:
- Size: 20.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# School-Management-System Backend
This is the Backend of a School Management System built using NodeJS, MongoDB, ExpressJS, Mongoose, and RESTful API.
## Application Features
- **Create exams endpoints:** Creating exams endpoints for managing exams.
- **Student exams:** Enabling students to take exams and check their results.
- **Generate exams report:** Functionality to generate exam reports.
- **Student promotion:** Promoting a student from one class to another.
- **Admin functionalities:**
- Publish and unpublish exam results.
- Assign programs and classes to teachers.
- Register new students.
- Suspend and withdraw students.
- Prevent suspended or withdrawn students from writing exams.
- Create classes, programs, academic terms/years, year groups, and subjects.
- **Role access level:** Implementing role-based access control to secure different parts of the API.
- **Pagination and filtering:** Handling large sets of data efficiently with pagination and filtering.
- **Advanced results middleware:** Middleware for handling advanced result processing.
- **Develop a school management system:** A comprehensive understanding of developing a school management system.## Getting Started
1. **Clone the repository:**
```bash
git clone https://github.com:RichardMiruka/School-Management-System.git
```
2. **Navigate to the project directory:**
```bash
cd School-Management-System.git
```
3. **Install dependencies:**
```bash
npm install
```
4. **Set up environment variables:**
```bash
Create a .env file and add the necessary configuration settings (e.g., database URL, JWT secret).
```6. **Run the application:**
```bash
npm start
```