An exercise to put to practice software development teamwork, subsystem communication, containers, deployment, and CI/CD pipelines. See instructions for details.
The School Task Manager is designed to assist students in effectively managing their academic tasks. By using this web application, students can organize, track, and meet deadlines for their school assignments and projects, ensuring they never miss a due date.
MongoDB Database: The backend of the School Task Manager utilizes MongoDB to store user data, tasks, courses, and deadlines efficiently. This setup allows for high performance and scalability, which is ideal for handling multiple user requests simultaneously.
Web Application: The integrated web app(included both front&back end) is built with modern web technologies, providing a clean and user-friendly interface for students to interact with their task lists. Features include adding new tasks, setting deadlines, categorizing tasks by course or date, and getting notifications for upcoming due dates.
There are two ways to access the School Task Manager:
You can access the School Task Manager directly through our hosted version on Digital Ocean. Simply visit the following URL to get started:
This method is the easiest and does not require any setup on your part.
If you prefer to run the application locally or contribute to its development, follow these steps to get it running on your machine using Docker:
- Docker installed on your machine.
- Docker Compose for managing multi-container Docker applications.
- Clone the repository to your local machine.
- Navigate into the project directory.
- Create a
.env
file in the root of the project by taking env.example as an example(adjust values as necessary) - Ensure MongoDB is running on your machine or set up a MongoDB container in your Docker configuration.
- To start the application, run:
docker-compose up --build -d
- Access the web-app from
http://127.0.0.1:3000
- If you want to pull from Docker Hub:
docker pull zijiezhao/project5