Catálogo de filmes onde é possível buscar filmes,animes e afins em outras APIs e salvar no próprio banco de dados.
- Buscar filmes em outra api e salvar no próprio banco de dados.
- Caso os filmes ainda não existissem no banco é mostrado um toast informando que foi salvo. E caso os filmes existam é mostrado um toast condizente.
- Paginação de acordo com o limite de filmes escolhido na hora da busca. Por padrão é 10.
- Busca por título
- Uso do getStaticProps do NextJs evitando consultas repetidas e "desnecessárias" no banco de dados.
- Salvar dados externos no banco de dados(nesse caso, filmes)
- Busca no banco por filtros (nesse caso, por título)
- Busca com limite, retornando quantidade de páginas e página atual
- Middlewares para tratamento de erros. Validações com Joi.
-
Clone o projeto:
git clone https://github.com/RafaDev95/RD95-Movies.git
-
Antes de tudo é necessário criar uma conta no MongoDB, criar seu cluster e credenciais para fazer a conexão que é atraves de uma URL.
-
Essa url do MongoDB é a variável de ambiente que está no app.ts "MONGODB_URL_CONNECTION"
-
Entre na pasta server e use comando
yarn
para baixar as dependências necessárias. -
Repita o processo na pasta client
-
Comando para iniciar tanto client quanto server:
yarn dev
- Sempre busco deixar o código mais "claro" possível para evitar comentários. Exceto em alguns casos onde a lógica é meia complexa ou algo do tipo(Fiz isso no middleware de validação com Joi)
- Quando acessar o projeto pelo link disponibilizado, ao avançar de página para buscar novos filmes está tendo uma certa lentidão. Vi que é devido onde foi hospedado e caso não consiga corrigir essa "lentidão" irei procurar outra hospedagem.
- Optei por usar Redux Toolki por ficar muito melhor para escalar a aplicação depois.