This repository contains a project focused on building a store management application using Node.js with Express to create a REST API. The application has been developed following architectural patterns, employing a layered architecture (model-service-controller).
- camelize (1.0.1)
- express (4.18.2)
- joi (17.6.0)
- mysql2 (2.3.0)
- docker compose (2.21.0)
- Structuring an application into layers (Model, Service, Controller).
- Applying the REST architectural style.
- Connecting the application to a MySQL database.
- Developing tests for the application.
To run the development application:
- Clone:
git clone git@github.com:yagobmoreira/store-manager.git
cd store_manager
- Containers:
docker compose up -d --build
- API logs:
docker logs -n 10 -f store_manager
- Tests:
- Container terminal
docker exec -it store_manager bash
npm run test:mocha
- Locally
cd backend
npm run test:mocha
- Testing API
Import the thunder-collection_Store_Manager.json file into your preferred client.
Yago Moreira - /src /tests
Trybe - Everything else