Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/geovaneborba/desafio-ignite-bookwise
https://github.com/geovaneborba/desafio-ignite-bookwise
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/geovaneborba/desafio-ignite-bookwise
- Owner: geovaneborba
- License: mit
- Created: 2023-07-07T21:29:24.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-07-10T19:59:09.000Z (over 1 year ago)
- Last Synced: 2024-11-10T19:13:11.546Z (about 1 month ago)
- Language: TypeScript
- Homepage: https://geovaneborba-bookwise.vercel.app/
- Size: 2.75 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
Sobre |
Tecnologias |
Pré requisitos |
Começando |
Licença |
Autor
## :dart: Sobre
Desafio realizado durante o programa ignite da Rocketseat, onde
foi solicitado o desenvolvimento de uma plataforma de recomendações para leitores, um lugar onde eles possam avaliar e ver avaliações de outros leitores sobre os mais diversos livros. Foi implementado as seguintes funcionalidades:- Autenticação utilizando uma conta do Google ou Github
- Limite de algumas funcionalidades para usuários não autenticados
- Listagem de avaliações realizada por usuários
- Listagem com os livros populares (que contém mais avaliações)
- Dialog (modal) contendo informações ao visualizar um livro
- Formulário para avaliar um livro
- Formulário para editar uma avaliação já existente
- Filtrar livros por nome ou autor
- Filtrar livros por categoria
- Perfil com filtro de livros avaliados e estatística de páginas lidas, categoria mais lida, autores lidos e livros avaliadosFoi trabalhado conceitos importantes do Next.js como por exemplo:
- Server-side Rendering (SSR)
- Static Side Generation (SSG)
- API Routes
- Dynamic Routes
- Images & Fonts Optimization🎯 Clique aqui para acessar o desafio ⬅️
## :rocket: Tecnologias
As seguintes tecnologias foram usadas na construção do projeto:
- [Next.js](https://nextjs.org/)
- [NextAuth.js](https://next-auth.js.org/)
- [TypeScript](https://www.typescriptlang.org/)
- [Styled Components](https://styled-components.com/)
- [Eslint](https://eslint.org/)
- [Prettier](https://prettier.io/)
- [React Hook Form](https://react-hook-form.com/)
- [ZOD](https://github.com/colinhacks/zod)## :warning: Pré-requisitos
Antes de começar, você precisa ter o [Git](https://git-scm.com) e o [Node](https://nodejs.org/en/) instalados em sua maquina. Além disso, você também vai precisar de um container rodando uma imagem do PostgreSQL. Você também vai precisar definir as variáveis ambiente de acordo com o .env.example
## :checkered_flag: Começando
```bash
# Clone este repositório
$ git clone https://github.com/geovaneborba/ignite-bookwise.git# Entre na pasta
$ cd ignite-bookwise# Instale as dependências
$ npm install# Para criar as tabelas do banco de dados
$ npx prisma migrate dev# Inserir alguns livros, avaliações e usuários fakes
$ npx prisma db seed# Para iniciar o projeto
$ npm run dev# O app vai inicializar e será informado no terminal o endereço e porta onde estará rodando a aplicação
# geralmente é http://localhost:3000/
```## :memo: Licença
Este projeto está sob licença MIT. Veja o arquivo [LICENSE](LICENSE.md) para mais detalhes.
Feito com ❤️ por Geovane Borba