Skip to content

Aplicação busca Simular uma api de investimentos. Utiliza JavaScritp, TypeScript, Docker, Sequelize entre outros!

Notifications You must be signed in to change notification settings

MarioFLS/Projeto-Investimentos

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b3d775f · Oct 28, 2022
Jul 15, 2022
Jul 24, 2022
Jul 24, 2022
Jul 24, 2022
Jul 23, 2022
Jul 19, 2022
Jul 16, 2022
Jul 15, 2022
Oct 28, 2022
Jul 17, 2022
Jul 21, 2022
Jul 23, 2022
Jul 24, 2022
Jul 21, 2022

Repository files navigation

Projeto Investimentos!

Descrição

Esse Projeto Busca Simular uma API de Investimentos

A Aplicação Permite:

  • Ter uma experiência de gerenciar suas ações(ativos), tanto comprando quanto vendendo;
  • E poder usar gerênciar seu usuário como melhor desejar. Fazendo depositos ou saques, vendo os ativos que foi comprado e mais!

Tecnologias Usadas

Desenvolvida utilizando: JavaScript, TypeScript, NodeJS, express, express-async-errors, Docker, Sequelize, Jest, Chai, Sinon, Swagger, Mysql.

Como Utilizar

Você pode escolher utilizar Docker ou Não.

🐳 Usando Docker

Rode os serviços node e mysql com o comando docker-compose up -d.

  • Lembre-se de parar o mysql se estiver usando localmente na porta padrão (3306), a porta pode ser mudada, mas não é aconselhado que se faça. Isto é falado mais a baixo;
  • Esses serviços irão inicializar um container chamado projeto-xp;
  • A partir daqui você pode rodar o container projeto-xp via CLI ou abri-lo no VS Code.

Use o comando docker exec -it projeto-xp bash.

  • Ele te dará acesso ao terminal interativo do container criado pelo docker compose, que está rodando em segundo plano.

Instale as dependências [Caso existam] com npm install


⚠️ Atenção ⚠️

  • É de suma importância que você desabilite o MYSQL no seu computador antes de rodar a aplicação. Pois eles usaram a mesma porta. No Windows você pode fazer pelos serviços, parando o MYSQL por lá

⚠️ IMPORTANTE! ⚠️

  • Não mude as portas, isso pode fazer com que você não consiga conectar no banco!
😀 Sem Docker

Instale as dependências [Caso existam] com npm install Use variaveis de ambiente para configurar, você achará um arquivo na raiz chamado .env.exemple. Retire o 'exemple'. Ele estará configurado para funcionar com o banco

Dica: Para rodar o projeto desta forma, obrigatoriamente você deve ter o node instalado em seu computador.


Como Conectar ao Banco

🎲 Conexão com o Banco

Crie o Banco

⚠️ IMPORTANTE!

A senha do Banco é password

#Não se esqueça de configurar suas variáveis de ambiente aqui na configuração

    DB_USER=root
    DB_PASSWORD=password
    DB_HOST=localhost
    SECRET_PASSWORD=senhaMuitoSecreta

Comando para subir o Banco

O Banco é iniciado usando o comando npm run restore no terminal!

⚠️ Atenção ⚠️

VOCÊ PRECISA INICIAR TIRAR O exemple, DO .env.exemple, SEM ELE A APLICAÇÃO NÃO FUNCIONA, ELA POSSUI A SENHA USANDA PARA FAZER OS TOKENS.

  • Com essas configurações, enquanto estiver na máquina local, o banco será executado normalmente via localhost (possibilitando os testes via npm test).

O CODIGO SÓ FUNCIONA APÓS TRANSPILAR.

  • Usando o comando npm start, ele fará a transpilação para você. Caso não funcione rode no proprio terminal tsc. Aguarde um momento e ele fará isso para você.


Iniciando a aplicação

Utilize o comando abaixo para iniciar a aplicação

npm start Como dito antes, ele irá transpilar o código e iniciar o uso. Não esqueça se for sair dele use CTRL + C ou equivalente. Se não a porta ainda será ocupada. Você pode reiniciar ou derrubar o container, isso resolverá esse problema.

Dentro do Container e com a aplicação iniciada, inicie o banco com o comando:

npm run restore E pronto! O Banco estará pronto para ser usado!

Rodando os testes o banco também será iniciado!

DOCUMENTAÇÂO

A documentação está no caminho /docs

  • Após iniciado a Aplicação utlize a rota /docs:

Exemplo

Sua aplicação estando rodando localmente ele provalvemente irá rodar na http://localhost:3000 Então use o seguinte caminho http://localhost:3000/docs

TESTES

Testes devem ser rodados dentro do Container!

⚠️ Os testes precisam da aplicação no ar! ⚠️

Estando a aplicação no ar, dentro do container rode npm test. Espere um pouco, eles podem demorar. E você terá os testes. Eles sobem a derrubam a aplicação, você perderá o que foi feito!

Estou aqui para Ajudar!

Havendo algum problema. Entre em contato comigo, poderei auxiliar a resolver os problemas! Isso também vale para dúvidas de funcionamento!

About

Aplicação busca Simular uma api de investimentos. Utiliza JavaScritp, TypeScript, Docker, Sequelize entre outros!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published