Projeto realizado durante módulo de Back-end do curso de desenvolvimento web da Trybe.
O que foi feito
Neste projeto desenvolvi um back-end dockerizado utilizando modelagem de dados através do Sequelize. Seu desenvolvimento respeitou as regras de negócio providas no projeto e API deve ser capaz de ser consumida por um front-end já provido nesse projeto, que foi desenvolvida pela Trybe em React.
O aplicativo TFC é um site informativo sobre partidas e classificações de futebol! ⚽️
Nesta aplicação, é possível realizar as operações básicas que se pode fazer em um determinado banco de dados: CRUD.
A aplicação foi desenvolvida com:
Node.jsTypeScriptJWTSequelizePOOS.O.L.I.DArquitetura MSCdockerdocker-composeMySqlExpress;
Diagrama ER e Entidades:
Como rodar o projeto
Configurações mínimas para execução do projeto:
-
Sistema Operacional Distribuição Unix
-
Node versão 16.14.0 LTS
-
Docker
-
Docker-compose versão >=1.29.2
Com Docker:
⚠️ Antes de começar, seu docker-compose precisa estar na versão 1.29 ou superior. Veja aqui ou na documentação como instalá-lo. No primeiro artigo, você pode substituir onde está com1.26.0por1.29.2. -
npm run compose:upna raiz do projeto; -
npm run install:appsna raiz do projeto para instalar dependências do front e back-end; -
docker exec -it app_backend bashem ./app/backend; -
npm run buildno container do backend; -
npm run db:resetno container do backend;
Localmente:
Necessita ter um banco de dados(MySql) instalado localmente
npm run install:appsna raiz do projeto para instalar dependências do front e back-end;npm run compose:upna raiz do projeto;npm run build;npm run db:reset;
📝 Tecnologias utilizadas
Node.jsTypeScriptJWTSequelizePOOS.O.L.I.DArquitetura MSCdockerdocker-composeMySqlExpress;
📝 Habilidades
- A realização da
dockerizaçãodos apps, network, volume e compose; - A modelagem de dados com
MySQLatravés doSequelize; - A criação e associação de tabelas usando models do
sequelize; - A construção de uma
API RESTcom endpoints para consumir os models criados; - A construção de um CRUD com
TypeScript, utilizandoORM;

