Skip to content

Latest commit

 

History

History
93 lines (60 loc) · 6.46 KB

File metadata and controls

93 lines (60 loc) · 6.46 KB

API de Locadora de Filmes

Uma API RESTful desenvolvida como parte de um projeto acadêmico para simular o sistema de gerenciamento de uma locadora de filmes. O objetivo principal foi aplicar os conhecimentos na construção de APIs com Node.js e Express, marcando a primeira integração de um back-end com um banco de dados relacional (MySQL) utilizando o ORM Prisma.

Descrição do Projeto

Este projeto recria a lógica de negócio para o gerenciamento completo de um catálogo de locadora. A API foi estruturada para ser um exercício prático de back-end, servindo como aprendizado fundamental para entender a criação de múltiplos endpoints, o tratamento de requisições (CRUD completo), a modelagem de dados relacional e a persistência de dados com o Prisma.

Funcionalidades

A API oferece endpoints para CRUD (Criar, Ler, Atualizar, Deletar) das seguintes entidades:

  • Gerenciamento de Filmes
  • Gerenciamento de Atores
  • Gerenciamento de Diretores
  • Gerenciamento de Produtores
  • Gerenciamento de Gêneros
  • Gerenciamento de Classificações
  • Gerenciamento de Estúdios

Tecnologias Utilizadas

  • Node.js
  • Express
  • Prisma (ORM)
  • Cors
  • Body-Parser
  • MySQL

Documentação da API

A documentação completa dos endpoints, com detalhes sobre as rotas, parâmetros esperados e exemplos de respostas, está definida no arquivo openapi.yaml (especificação OpenAPI/Swagger) localizado na pasta database/.

Visualizar a Documentação (openapi.yaml)

(Nota: Para uma visualização interativa, você pode carregar este arquivo em um visualizador de Swagger, como o Swagger Editor)

Instalação e Execução

Para executar o projeto em seu ambiente local, siga os passos abaixo.

Pré-requisitos:

  • Node.js (versão 18 ou superior).
  • NPM ou Yarn.
  • Um servidor de banco de dados MySQL rodando localmente.

Passo a passo:

  1. Clone o repositório:

    git clone https://github.com/GabryelFillipe/PBE-API-Filme.git
  2. Acesse a pasta do projeto:

    cd PBE-API-Filme-29e0e579ee05880c6bd510f7777f0e70532dfcad
  3. Instale as dependências:

    npm install
  4. Configure as variáveis de ambiente:

    • Crie um arquivo .env na raiz do projeto (você pode copiar o conteúdo do env.example, se houver, ou usar o arquivo .env fornecido).
    • Configure a variável DATABASE_URL com a string de conexão do seu banco de dados MySQL.
    • (Execute os scripts SQL (script banco locadora.sql ou Script locadora-atualizado.sql) no seu banco de dados para criar as tabelas).
  5. Gere o cliente Prisma: Este comando sincroniza o cliente Prisma com seu schema (embora o projeto use SQL raw, o cliente é necessário).

    npx prisma generate
  6. Inicie o servidor:

    node app.js

O servidor estará rodando em http://localhost:8080.

Autor

Este projeto foi desenvolvido por Gabryel Fillipe. Conecte-se comigo!

LinkedIn