/rocketmovies-backend

No RocketMovies você poderá criar uma conta e desfrutar de um ambiente para registrar suas anotações sobre filmes. 📽

Primary LanguageJavaScript

📽 Back-end RocketMovies

💻 Projeto

Back-end de uma aplicação de criação de notas sobre filmes, o RocketMovies.

No RocketMovies você poderá criar sua conta e desfrutar de um ambiente para você registrar suas anotações sobre filmes.

Você registrar o filme (com título e descrição) e atribuir uma nota para ele.

As anotações podem conter tags para deixá-las mais completas.

Desenvolvi a lógica para:

  • Criação e Atualização de Usuários;
  • Criação, Listagem e Remoção de Notas;
  • Listagem de Tags.

Além disso, a aplicação está conectada com um banco de dados, deixando as coisas dinâmicas.

📥 Conhecimento adquirido

  • O que é uma API;
  • O que é o Node.js;
  • Express;
  • Rotas e Métodos HTTP;
  • Route Params, Query Params e Body Params;
  • Nodemon;
  • Insomnia;
  • Arquitetura de Projeto;
  • HTTP Codes;
  • Tratamento de erros;
  • Banco de dados e SGBD;
  • SQL: DDL e DML;
  • Migrations;
  • Criptografia de senha;
  • Nullish operator;
  • Query Builder: knex.js;
  • Consultas simples e Complexas no DB;
  • Fluxo de autenticação;
  • Trabalhar com Json Web Token (JWT);
  • Trabalhar com Middleware;
  • Como fazer Upload de Imagens na aplicação;
  • Trabalhar com API Restful;
  • Trabalhar com Cross-Origin Resource Sharing (CORS);
  • O que é Deploy;
  • Ambientes de execução;
  • Boa práticas de Deploy: Dados sensíveis e Variáveis Ambientes;
  • Gerenciador de processos PM2;
  • Desenvolver Testes com Jest.js;
  • O que é e como aplicar o princípio da Inversão de Dependência.

🛠 Tecnologias usadas

▶ Rodando a Aplicação

Pré-requisitos

Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas: Git, Node.js.

Além disto é bom ter um editor para trabalhar com o código como VSCode e ter o Insomnia instalado para trabalhar com todas as requisições http.

OBS: você pode importar o arquivo insomnia.json dentro do insomnia para já ter acesso ao projeto com as requisições http pré-configuradas.

# Clone este repositório
$ git clone https://github.com/Elias-Neto/rocketmovies-backend

# Acesse a pasta do projeto no terminal/cmd
$ cd rocketmovies-backend

# Instale as dependências
$ npm install

# Execute as migrations
$ npm run migrate

# Caso queira rodar os testes
$ npm run test

# Execute a aplicação em modo de desenvolvimento
$ npm run dev


Desenvolvido com ❤ por Elias de Araújo Ferreira Neto 👋