Frontend: todo-app-frontend
TaskHub is a robust todo board application designed to streamline task management with a user-friendly interface. Built on a tech stack featuring Node.js, Express, Redux, React.js, Sequelize ORM, TypeScript, and PostgreSQL, TaskHub offers a seamless experience for organizing and prioritizing tasks.
Users can securely authenticate themselves through a JWT-based authentication system. TaskHub provides a hassle-free signup process, ensuring data integrity and user privacy.
Upon login, users are greeted with a personalized board screen, displaying their tasks and columns. This tailored experience enhances efficiency and user satisfaction.
Easily customize your task board by adding new columns to categorize tasks. This feature allows users to tailor their workflow to suit their specific needs.
TaskHub simplifies task creation with a straightforward interface. Users can swiftly add tasks to their designated columns, minimizing time spent on administrative tasks.
Effortlessly update task details with the edit feature. Users can modify task names, descriptions, and other information to keep their tasks accurate and up-to-date.
Remove unnecessary tasks with the delete feature. TaskHub allows users to declutter their board by easily removing tasks that are completed or no longer relevant.
Effortlessly reorder tasks within columns to prioritize work. TaskHub's intuitive drag-and-drop functionality makes task management a breeze.
Adapt to evolving priorities by moving tasks between columns. This flexibility ensures that TaskHub remains a dynamic tool for users with ever-changing task lists.
To get started with TaskHub, follow these steps:
- Clone the frontend repository
git clone https://github.com/education-tech-stack/todo-list-frontend
. - Clone the backend repository
git clone https://github.com/education-tech-stack/todo-list-backend
. - Set up Postgres by using docker-compose or any method that you prefer. Just get the Postgres URL.
- Backend:
cd todo-list-backend
get into the directory.- Install dependencies using
yarn
. - Create a file
.env
and add two variables namedSECRET_KEY
andSEQUELIZE_DATABASE
. Add any string as it's used for JWT generation and the Postgresql URL that you have respectively. - Optional: If you want some seed data run
yarn seed
. - Run dev as
yarn dev
.
- Frontend:
cd todo-list-frontend
get into the directory.- Install dependencies using
yarn
. - Create a file
.env
and add a variable namedVITE_SERVER
. Add backend URL string ashttp://localhost:8000/api
. Change the port as per your requirement. - Run dev as
yarn dev
.
Check package.json
for other commands.
This project uses commitlint to ensure that commit messages are conventional-changelog compliants.
To help you build more efficient commit messages, you can use the commitizen package by running this command :
yarn cz
TaskHub is licensed under the MIT License. Feel free to use, modify, and distribute it according to the terms of the license.