Skip to content

Aplicação desenvolvida com a finalidade de estudo em nodeJS, docker e princípios do SOLID. O projeto é uma API REST para que usuários possam fazer registros de carros específicos.

Notifications You must be signed in to change notification settings

RenanFachin/PUCRS_API_HotWheels

Repository files navigation

API Hotwheels

Aplicação desenvolvida com a finalidade de estudo em nodeJS, docker e princípios do SOLID. O projeto é uma API REST para que usuários possam fazer registros de carros específicos.

O deploy da aplicação se encontra no endereço: API-URL

Requisitos funcionais

O que é possível que o usuário faça na aplicação.

  • Deve ser possível se cadastrar;
  • Deve ser possível se autenticar;
  • Deve ser possível cadastrar um carro
  • Deve ser possível listar todos os carros
  • Deve ser possível listar os detalhes de um carro específico
  • Deve ser possível deletar um carro cadastrado
  • Deve ser possível fazer a atualização dos dados de um carro

Regras de negócio

Determina condições que serão aplicadas para cada requisito funcional.SEMPRE é associada à um requisito funcional

  • O usuário não deve poder se cadastrar com um e-mail duplicado;

Requisitos não funcionais

Requisitos que não partem do cliente, são requisitos mais técnicos. ex: Qual banco de dados será utilizado.

  • A senha do usuário precisa estar criptografada;
  • Os dados da aplicação precisam estar persistido em um banco PostgreSQL;
  • O usuário deve ser identificado por um JWT (JSON Web Token);

Executando o projeto

// Instalar dependências
npm i

// Copiar o arquivo com os dados de conexão e demais variáveis ambiente
cp .env.example .env

// Subir o serviço do PostgreSQL via docker
docker compose up -d

// Criar as tabelas do banco de dados (em desenvolvimento)
npx prisma migrate dev

// Criar as tabelas do banco de dados (em produção)
npx prisma migrate deploy

// Execute o projeto
npm run dev

// Visualizando o banco de dados
npx prisma studio

Insomnia test

Run in Insomnia}

Tech

  • NodeJS
  • Fastify
  • Prisma
  • PostgreSQL
  • Typescript

About

Aplicação desenvolvida com a finalidade de estudo em nodeJS, docker e princípios do SOLID. O projeto é uma API REST para que usuários possam fazer registros de carros específicos.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published