Este é o repositório do backend da minha solução para o desafio Fullstack SpaceX API. Ele alimenta uma aplicação web que exibe informações atraentes sobre os lançamentos de foguetes da SpaceX. Para ver as instruções do desafio original, consulte README.
Para ver a apresentação do projeto em vídeo clicke aqui.
- Node.js (Fastify) para criar a API Restful
- Postgres para armazenar os dados dos lançamentos
- Node-cron para agendamento de tarefas diárias de sincronização de lançamentos
- Swagger para documentação da API
- Docker e Docker-Compose para facilitar o deploy
- Testes unitários com Vitest
- Clone o repositório:
git clone https://github.com/Renato1478/coodesh-spacex-backend
- Navegue para o diretório do projeto:
cd pasta/de/destino/do/projeto
- Inicie os containers
docker compose up
- Copie o conteúdo do arquivo .env.example para um novo chamado .env
cp .env.example .env
Para iniciar a API (em modo desenvolvimento), execute:
npm run dev
Ao finalizar o processo de inicialização do container, a aplicação estará disponível em http://localhost:3333.
Foi utilizada a biblioteca node-cron para a importação dos dados da SpaceX.
O projeto inclui testes unitários para as rotas da API. Você pode executar os testes usando o seguinte comando na pasta do servidor:
npm run test
This is a challenge by Coodesh