/trybe-futebol-clube

RESTful API following SOLID principles developed with TypeScript and Sequelize. Integration tests implemented.

Primary LanguageJavaScript

Trybe Futebol Clube

About

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

Tools

  • TypeScript
  • Node.js
  • Express.js
  • Sequelize.js
  • Joi
  • MySQL
  • bcryptjs
  • Mocha.js
  • Chai.js
  • Sinon.js
  • OOP (Object-Oriented Programming)
  • Docker
  • React

Developed Skills

  • 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

In works

As of now, I am no longer working on this project.

PS:

My computer can't run Docker, so I had to test it through GitHub -- that's why there are a lot of "testing" commits.