Skip to content

williamkoller/challenge-brain-agriculture

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deploy with Railway

Challenge Brain Agriculture

Tempo que foi gasto no desenvolvimento

wakatime

Brain Agriculture - Arquitetura

Estrutura do projeto

Endpoints/Rotas

Collections para usar no Postman

Tecnologias usadas

  • Node.js
  • Typescript
  • Nestjs
  • Sequelize
  • Postgres
  • Docker
  • Docker Compose
  • Github Actions
  • Railway
  • Jest
  • Swagger

Como rodar o projeto?!

Requisitos

  • Docker
  • Docker Compose
  • Nvm (Node Version Manager)
  • Node.js (v22.12.0)

Passos

  1. Clone the repository
git clone [email protected]:williamkoller/challenge-brain-agriculture.git
  1. Access the project folder
cd challenge-brain-agriculture
  1. Install the dependencies
nvm use
npm install
  1. Run the project
docker-compose down && docker-compose up --build
  1. Access the project in the browser
http://localhost:3003/api/swagger
  1. Rodar os testes
npm run test
  1. Se quiser entrar no container web-api
docker exec -it web-api sh
  1. Se quiser entrar no container postgres
docker exec -it postgres sh

Obs

  • A migration roda sozinha quando starta o container da web-api

Acesse o container web-api e rode os comandos abaixo

docker exec -it web-api sh

Para criar uma migation

npm run migration:create <nome-da-tabela>

Para rodar as migrations

npm run migration:up

Para reverter as migrations

npm run migration:down

Esse projeto esta na Cloud - Railway

  • Criei dois Actions no Github para fazer o deploy da aplicação na Railway e para a Pull Request.

  • Deploy está automatizado, toda vez que um PR é aberto e logo após mergeado o deploy é feito na Railway automaticamente.

  • Acesse o Swagger da aplicação na Railway Brain Agriculture as credenciais estão aqui Credenciais

  • Dashboard Railway Deploy with Railway

  • Criei um tela para exibir o Dashboard da aplicação Dashboard

Dashboard

Dashboard

Observabilidade

Logs

Dashboard

Métricas

Dashboard

Esse projeto foi feito com ❤️ por William Koller