An application for book management.
- Node v20.18.1
- Yarn 1.22.22
- Clone the repository (SSH):
git clone git@github.com:hernanymotoso/book-manager-api.git
cd book-manager-api
git fetch origin
git checkout developer
- Install the depentencies:
yarn install
- Run tests:
yarn test:ci
- Run the app:
yarn start
The application will be available at http://localhost:5050
.
-
✅ Architecture: Clean Architecture
- I decided to use clean architecture because with it we can divide the project into layers, isolate our domain and business rules from external libraries and ensure decoupling, quality, sustainability and scalability of the project.
- I decided to use Test-Driven Development and Development tooling to ensure the quality and security of the API.
-
⚙️ Design Patterns / Principles / Conventions
- You Ain't Gonna Need It (YAGNI)
- Single Responsability (SRP)
- Dependency Inversion (DIP)
- Factory Pattern
- Repository Pattern
- Arrange, Act, Assert (AAA)
- Test Doubles (Mock, Stub, Spy)
- System Under Test (SUT)
- Test-Driven Development (TDD)
- Git Flow
- Small Commits


I spent about 2 hours
- First Commit

- Last Commit
