Skip to content

Enyus/alurachallengebackend5

Repository files navigation

Alura Challenge Back-end 5 - Alura Flix API (WIP)

Este repositório guarda a minha versão do back-end do site Alura Flix, desenvolvido no Alura Challenge Back-End 5, entre 24/10 e 22/11/2022.

🪧 Vitrine.Dev
✨ Nome Alura Challenge Back-end 5 - Alura Flix
🏷️ Tecnologias NodeJs, Express, Prisma, SQLite, Hopscotch
🚀 URL https://aluraflix-front.vercel.app/

Detalhes do Projeto

O projeto tem o objetivo de construir um back-end para o front do site Aluraflix. Resolvi utilizar as tecnologias NodeJs, Express, Prisma, SQLite e o Hopscotch como ambiente de testes.

Semana 1 ✅

Iniciar o banco de dados e criar requisições CRUD básicas.

Listar todos os Vídeos Listar um vídeo
listar todos os vídeos listar um vídeo
Adicionar um vídeo Alterar um vídeo
adicionar um vídeo alterar um vídeo
Deletar um Vídeo
deletar um vídeo

Semana 2 ✅

Criar nova tabela para categorias com relação de categoria 1:n vídeos; fazer rotas CRUD para as categorias; criar rota para listar vídeos por categoria; e criar rota com parâmetros de busca para os vídeos.

Listar todas as Categorias Listar uma categoria
listar todas as categoria listar uma categoria
Adicionar uma categoria Alterar uma categoria
adicionar uma categoria alterar uma categoria
Deletar uma categoria Listar vídeos por categoria
deletar uma categoria listar videos por categoria
Procurar um vídeo
procurar um vídeo

Semanas 3 e 4 ✅

Criar funcionalidades de paginação, autenticação, rota para requisições sem autentticação e fazer o deploy da API.

Para a autenticação, resolvi usar o Json Web Token (JWT), criado com login de um usuário. Para testar usar o "username": "admin" e a "password":"parangaricotirimirruaru". Entendo que seria melhor uma criptografia da senha, mas escolhi pela simplicidade usar apenas a lib jsonwebtoken como autenticação.

Paginação Autenticação
paginação autenticação
Rota Free
rota free

Extra - Integração

Com muito custo (hahaha, eu rio que é melhor que chorar), consegui fazer a integração da API com o aluraflixFront, que pode ser observado (LIVE!) AQUI.

AluraFlix Front

Para rodar o projeto

  • Faça o clone do repositório com git clone https://github.com/Enyus/alurachallengefrontend5.git
  • Faça a instalação das dependências com npm install
  • Inicie o prisma com npx prisma generate
  • Se ainda não existir a pasta prisma/migrations, executar npx prisma migrate dev
  • Faça o seed dos primeiros vídeos do banco de dados com npx prisma db seed (opcional)
  • Inicie o servidor com npm run dev
  • Para ver uma representação gráfica do banco dedados, abra outro prompt de comando e use npx prisma studio (opcional)