ClassMate is a powerful Express/TypeScript server that serves as your assistant in managing students' assignments, exercises, modules, and other aspects of software engineering education.
- User Management: Manage students, instructors, and administrators.
- Assignment Handling: Create, update, and track student assignments.
- Exercise Repository: Store and organize coding exercises for students.
- Module Management: Organize the course content into modules.
- Authentication and Authorization: Secure endpoints with user roles.
- Node.js (v14.0.0 or later)
- npm (v6.0.0 or later)
- TypeScript (v4.0.0 or later)
-
Clone the repository:
git clone https://github.com/your-username/ClassMate.git cd ClassMate
-
Installed Dependencies
npm install
-
Configuration
- Copy the .env.example file to .env:
cp .env.example .env
- Update the .env file with your MongoDB connection string and other configuration details.
We welcome contributions! To contribute to ClassMate, follow these steps:
- Fork the repository.
- Create a new branch: git checkout -b feature/new-feature.
- Make your changes and commit: git commit -m 'Add new feature'.
- Push to the branch: git push origin feature/new-feature.
- Submit a pull request.