This project was developed to practice the skills on a full stack situation.
https://www.figma.com/file/EnvCv0sWpsBNOXML70cER8/My-Todo-List?node-id=0%3A1
In this application you can control your activities.To start you must add tasks on Create Mode, after that you can edit any task description by entering on Edit Mode, change the status by the Actions, and search a task by description on Search Mode, and if you want to organize by description, status or created date, use the button
The Create Mode is the default mode.
To add a task, start to write the description on input bar and save by clicking on save button, after this, the task will appear in the table with the description, status, creation date and available actions
You can change the status of your task by clicking on the images on action column ( pending, ongoing, done) and if you prefer you can delete the task.
To edit the task Description, click on button beside of task description, on clicking you have to write the new description on input and click on update button to submit
To search a task, you have to activate Search Mode by clicking on buttonand write a key word on input bar,after that it will only show tasks with description compatible with the search, and to finish the search you have to click on
- Show task list;
- Insert a new task;
- Remove a task;
- Update a task description;
- Update the status of the task;
- Sort the tasks by description, status or date;
- Back End integration tests;
- Front End unit tests;
On FrontEnd:
- React, Next, TypeScript and Tailwindcss to create the pages;
- React useState, useEffect and Hooks to manage state;
- Unit test using Jest;
On BackEnd:
- Use Docker and Docker-compose to manage container environment;
- Use MSC architecture;
- Use TypeScript and OOP(Object-Oriented Programming) with SOLID principles;
- Use Express framework from Node.js and ORM library Sequelize for MySQL database modeling;
- Integration tests using Mocha, chain & sinnon;
On terminal:
- Please install or check the version of the following services on your system:
NPM & Node on version 8.5.5
& v16.15.0
npm -v
node -v
Docker on version 20.10.17
docker -v
Docker-Compose on version 1.29.2
docker-compose -v
- Clone the repository
git clone git@github.com:rtxnak/todo-list.git
- Install the dependencies
-
move to app folder:
cd todo-list
-
Install dependencies:
npm run install:frontend
npm run install:backend
- build docker-compose
npm run compose:up
-
The application can be accessed through:
-
Finish the application
npm run compose:down