Skip to content

Projeto Fullstack de uma aplicação web, dockerizada, cujo objetivo seja possibilitar que usuários da NG.Cash consigam realizar transferências internas entre si.

Notifications You must be signed in to change notification settings

thalesmsm/NGCash-Challenge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 

Repository files navigation

NG.Cash Challenge

Projeto como objetivo de estruturar uma aplicação web fullstack, dockerizada, cujo objetivo seja possibilitar que usuários da NG consigam realizar transferências internas entre si.

O diretório raiz é composto por dois sub-diretórios, sendo eles backend e frontend. Para rodar cada aplicação (backend e frontend) é necessário estar dentro do diretório específico de cada uma delas e seguir os passos:

Criação do banco de dados e iniciando a aplicação Backend

Instruções para rodar a aplicação localmente
  1. Primeiramente será necessário criar um arquivo .env que tenha as variáveis de ambiente necessárias para que a aplicação acesse seu bancode dados Postgres.

O arquivo '.env' deve conter o seguinte conteúdo:

DB_USERNAME=postgres
DB_PASSWORD=password
DB_NAME=postgres
DB_HOST=hostname
DB_PORT=5432
APP_PORT=3001
JWT_SECRET=jwtsecret

Onde:

  • DB_USERNAME: Nome de usuário do Postgres. Aqui estamos utilizando o usuário postgres mas, em um ambiente de produção, deve-se utilizar um outro usuário por questões de segurança;
  • DB_PASSWORD: A senha do nome de usuário especificado em DB_USERNAME;
  • DB_NAME: O nome que irá dar ao banco de dados;
  • DB_HOST: O nome do host (computador hospedeiro) no qual o servidor Postgres está sendo executado. Caso você esteja executando o servidor Postgres no seu computador local o valor deve ser 127.0.0.1;
  • DB_PORT: A porta usada pelo servidor Postgres.
  • APP_PORT: A porta usada pelo servidor Node da API.
  1. Instale as dependências
npm install
  1. Execute os seguintes comandos para criar a base de dados no seu servidor Postgres e popular as tabelas com alguns dados
npx sequelize-cli db:drop
npx sequelize-cli db:create
npx sequelize-cli db:migrate
npx sequelize-cli db:seed:all
  1. Inicie o servidor da API
npm run dev

Inicialização do Frontend

  1. Instale as dependências
npm install
  1. Inicie a aplicação
npm run dev

INTRUÇÕES PARA RODAR O PROJETO COM DOCKER

  1. Primeiramente serão criados os container para o banco de dados, aplicação backend e fontend. Rode o comando abaixo na pasta raiz do projeto.
docker-compose up --build

Feito isso as aplicaçãoes já devem estar disponíveis:

  • Servidor backend rindando na porta 3001;
  • Fontend tondando na porta 3000;
  • E o banco de dados na porta 5432.
  1. Execute os seguintes comandos para criar a base de dados no seu servidor Postgres e popular as tabelas com alguns dados
npx sequelize-cli db:drop
npx sequelize-cli db:create
npx sequelize-cli db:migrate
npx sequelize-cli db:seed:all

Aplicação em funcionamento

2022-11-21-15-58-23.mp4

About

Projeto Fullstack de uma aplicação web, dockerizada, cujo objetivo seja possibilitar que usuários da NG.Cash consigam realizar transferências internas entre si.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published