The School Management System is a comprehensive solution designed to streamline the educational process by providing a centralized platform for teachers, students, and parents. The system is built using React with TypeScript for the frontend and MongoDB for the backend. It offers three distinct panels for teachers, students, and parents, each tailored to their specific needs.
- Assign Exams: Teachers can create and assign exams to students, including setting the marks for each exam.
- Upload Videos: Teachers can upload educational videos for students to enhance their learning experience.
- Manage Attendance: Teachers can track and manage student attendance.
- Provide Feedback: Teachers can give feedback on student performance and progress.
- View Schedule: Teachers can access their schedule to keep track of classes and other activities.
- View Videos: Students can watch educational videos uploaded by their teachers.
- View Profile: Students can access their personal details and profile information.
- Track Progress: Students can view their exam results, attendance records, and feedback from teachers.
- Monitor Child's Progress: Parents can track their children's academic progress, including exam results, attendance records, and teacher feedback.
- Frontend: React with TypeScript
- Backend: Node.js, Express.js
- Database: MongoDB
To get started with the School Management System, follow these steps:
-
Clone the repository:
git clone https://github.com/yourusername/school-management-system.git cd school-management-system -
Install dependencies:
npm install
-
Setup environment variables: Create a
.envfile in the root directory and add your MongoDB connection string and any other necessary environment variables. -
Start the development server:
npm run dev
-
Build for production:
npm run build
Once the application is up and running, navigate to the respective URLs to access the different panels:
- Teacher Panel:
/teacher - Student Panel:
/student - Parent Panel:
/parent
We welcome contributions to improve the School Management System. To contribute, follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature-name
- Make your changes and commit them:
git commit -m 'Add some feature' - Push to the branch:
git push origin feature/your-feature-name
- Open a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.
For any questions or inquiries, please contact us at support@example.com.