Project developed at Back-End Development Module of Trybe's Web Development course. It was approved with 100% of the mandatory and optional requirements met.
The goal was to develop a RESTful API following SOLID principles, and its integration tests for a front-end application that was already developed.
The application is used to check matches's data and the leaderboard of a soccer competition, to register and update matches. The authentication is handled with JSON Web Tokens, and the password encryption is handled with bcryptjs.
The project is structured in four parts:
- Database
- Back-End
- Fron-End
- Docker
- TypeScript
- Node.js
- Express.js
- Sequelize.js
- Joi
- MySQL
- bcryptjs
- Mocha.js
- Chai.js
- Sinon.js
- OOP (Object-Oriented Programming)
- Docker
- React
- Use Object-Oriented Programming concepts
- Use SOLID principles, such as Single Responsability, Open/Closed, Dependency Inversion, Substitution (Liskov) and Interface Segregation
- Define types and interfaces
- Develop a Express.js application with TypeScript
- Use Sequelize.js with TypeScript
- Create a RESTful API
- Implement integration tests
- Use Docker
As of now, I am no longer working on this project.
My computer can't run Docker, so I had to test it through GitHub -- that's why there are a lot of "testing" commits.