Skip to content

Todo App: Assessment Completed#4

Open
beito wants to merge 20 commits intomandrade86:mainfrom
beito:julio-marin
Open

Todo App: Assessment Completed#4
beito wants to merge 20 commits intomandrade86:mainfrom
beito:julio-marin

Conversation

@beito
Copy link

@beito beito commented Apr 5, 2025

This PR includes the full implementation of the TODO application, featuring both the backend (Node.js + Express + MongoDB + Jest) and the frontend (Next.js 14 + Tailwind CSS + Jest + Testing Library).

beito added 20 commits April 4, 2025 08:59
Ignoring libraries and mac osx dir files
The backend misses the typescript definition for the cors objects
- Since the project is using mongodb v: 7.0.0 or above, There is not need for using: useNewUrlParser and useUnifiedTopology.
- Also, the schema and models has been included
- Declaring the Task Module definition using an approach similar to Nest JS (Modular Architecture)
It's located on the config path.
Also, bodyParser is not longer needed due to the current version for express: 4.18.2 or superior
This will ensure the SoC and SRP.
Both task.service, for handling the interaction to the database and the controller, for establish a bridge between the routes and the service have been  integrated.
Refactor: Applying some standars on code
Now the code handles validations through a Middleware (By using Joi library), before they access the controllers.
The following json is the standard body:

{
message, data
}
Now the Business logic is covered with unit test. Jest is used for both unit test and code coverage.
React hooks have been imported.
Following the Feature-Sliced Architecture
Handling hooks on Task feature.
Delegating the api route on Config environment.
Creating TaskItem component.
- Tailwind fully integrated
- Cleaning remaining styles (Like page.module.css)
- Adding Tailwind general Style
- Integrating Mongo DB Atlas for remote conecction (This one has a dependency with .env)
Also some tailwind styles were included.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant