A web application where the user can "procrastinate" a task from a todo list. Once a task is "procrastinated", two smaller task related to the main task will be generated for the user to complete.
- Clone the repository:
git clone https://github.com/CSC105-2024/CSC105-hackathon-G04-Procrastivity.git cd CSC105-hackathon-G04-Procrastivity
- React
- Axios
- React Router DOM
- Tailwind CSS
- Zod
-
Navigate to the frontend directory:
cd Frontend
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
The client will be running on http://localhost:5173 (or similar, depending on your setup).
- Node.js
- Hono
- MySQL
Method | Endpoint | Description |
---|---|---|
POST | /user/createUser |
Create an account for a user |
GET | /user/getUser/:id |
Get all information of a user based on given user id |
PATCH | /user/updateUsername |
Updates a user's username |
PATCH | /user/updateProfilePicture |
Update a user's profile picture |
PATCH | /user/updateXp |
Updates a user's xp |
POST | /task/createTask |
Create a task for a user |
POST | /task/procrastinate |
"Procrastinate", creates 2 subtask related to the main task for a user |
PATCH | /task/getTask |
Get all task of a user(with or without filter) |
PATCH | /task/updateTask |
Updates the completion status of a task |
DELTE | /task/deleteTask/:id |
Delete a task based on given task id |
PATCH | /subTask/updateSubTask |
Updates the completion status of a subtask |
-
Navigate to the backend directory:
cd Backend
-
Install dependencies:
npm install
-
Create a
.env
file and configure the following variables:DATABASE_URL='{Your database URL}' SHADOW_DATABASE_URL='{Your database URL}'
-
Start the development server:
npm run dev
-
The server will be running on http://localhost:8000