Esta API, que permite o monitoramento do clima, foi desenvolvida visando sua utilização no projeto "Cloud Fox" (mais informações vide este link).
Aplicação desenvolvida por alunos do 4º semestre do tecnólogo em Desenvolvimento de Software Multiplataforma, na FATEC Profº Jessen Vidal - São José dos Campos, SP 🚀
As seguintes tecnologias e ferramentas foram utilizadas neste projeto: Typescript, NodeJS / Express.js, PostgreSQL, Docker, Insomnia
- Tutorial para rodar o projeto
# Baixe este repositório ou clone pelo Git usando o comando:
$ git clone https://github.com/The-Bugger-Ducks/cloud-fox-back.git
# Acesse a pasta do projeto
$ cd cloud-fox-back
# criar um arquivo chamado ".env" e copiar a estrutura do arquivo ".env.example" e colocar seus respectivos dados
# Utilize o docker-compose para criar o banco de dados
$ docker-compose up -d
# Utilize o comando do TypeORM para o run da migration e sincronizar as entidades
$ yarn typeorm migration:run -d ./data-source.ts
# Inicie o Projeto
$ yarn start
O servidor inciará localmente na porta 3000 (citada no arquivo .env). Use o Insomnia para simular requisições e respostas das rotas (pelo link https://localhost:3000) ou utilize o projeto fron-end do "Cloud Fox" para executar as funcionalidades da aplicação (acesse o repositório por este link).
Pasta | Definição |
---|---|
📂 src/app/ | Arquivos com o código fonte do projeto |
📂 src/app/@types | Arquivos de sobrescrita de tipagem em bibliotecas. ex: express |
📂 src/app/controllers | Arquivos com os métodos de requisição das rotas |
📂 src/app/entities | Arquivos com as entidades do banco de dados do projeto |
📂 src/app/enums | Arquivos de padronização de entrada para campos específicos no banco de dados |
📂 src/app/ middlewares/ | Arquivos para serviços de intermédio para rotas ex: autenticação, mensageria, etc |
📂 src/app/ services/ | Arquivos para funções mais complexas e limpeza de código |
📂 src/app/database/migrations/ | Arquivos para manter o banco de dados sincronizado quanto a sua estrutura |
📂 src/repositories/ | Arquivos para expor repositorios das entidades e manipulá-las com metodos do typeorm |
📄 src/app/index.ts | Arquivo principal de inicialização do projeto |
📄 src/app/routes.ts | Arquivo para gerenciar as rotas do projeto |
📄 src/data-source.ts | Arquivo usado para configurar as conexões com o banco de dados com o TypeORM |
📄 docker-compose.yml | Arquivo usado para "conteinerizar" um banco postgres local |
📄 tsconfig.json | Arquivo usado para configurar o typescript como sintaxe, organização de arquivos, etc. |
📄 package.json | Arquivo usado gerenciar as dependencias do projeto com o Yarn e compor scripts de terminal |