Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/brunocarvalhofeitosa/barber
Application made with Next.js, Typescript, Prisma, PostgreSQL, TailwindCSS and ShadcnUi.
https://github.com/brunocarvalhofeitosa/barber
Last synced: 5 days ago
JSON representation
Application made with Next.js, Typescript, Prisma, PostgreSQL, TailwindCSS and ShadcnUi.
- Host: GitHub
- URL: https://github.com/brunocarvalhofeitosa/barber
- Owner: BrunoCarvalhoFeitosa
- Created: 2024-04-26T21:43:11.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2024-04-29T20:51:05.000Z (7 months ago)
- Last Synced: 2024-04-29T23:33:57.348Z (7 months ago)
- Language: TypeScript
- Homepage: https://bruno-carvalho-feitosa-barber.vercel.app
- Size: 488 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
App desenvolvido em Next.js, Typescript, Prisma, PostgreSQL, TailwindCSS e ShadcnUI para reserva de horários em uma barbearia. A aplicação possui sistema de login autenticado com o Google, para isso foi utilizada a biblioteca next-auth, através desta autenticação é possível reservar horários para diversos tipos de serviços que a barbearia oferece, como por exemplo, corte de cabelo, barba, sobrancelha, pezinho, massagem e hidratação. Todas as reservas são salvas e podem tanto ser visualizadas quando podem ser canceladas.Sumário
## Sobre o projeto
### Desktop
A aplicação é totalmente responsiva, adapta-se a diferentes tamanhos de telas, além de ser segura, já que possui autenticação com o Google. Além disso, foram feitas validações acerca das reservas, onde um usuário não logado não poderá reservar qualquer tipo de serviço, as reservas já ultrapassadas das datas ainda são exibidas como uma maneira do usuário ver o histórico geral, estas reservas não possuem nenhuma interação, ou seja, o usuário não poderá remove-las e nem ter nenhum tipo de ação. Além disso, a aplicação possui um sistema de busca de barbearias, através do react-hook-form e do zod as buscas são validadas e são disparadas no banco de dados com base no que o usuário digitou, caso não haja nenhum resultado retornado, na interface uma mensagem é exibida e caso haja retorno de resultados, eles são exibidos e possuem interação, o usuário poderá clicar no card e ir diretamente para a página da barbearia para reservar um horário para qualquer serviço, lembrando que uma vez um horário selecionado, ele é removido para que outros usuários não selecionem o mesmo horário.https://github.com/BrunoCarvalhoFeitosa/barber/assets/46093815/fc57d7d3-9c8b-4e6a-aff8-a4d93b73d4cb
### Mobile
https://github.com/BrunoCarvalhoFeitosa/barber/assets/46093815/c0605294-b4bd-461f-9cdb-447fcae7e775
### Feito com
* [Next.js](https://nextjs.org)
* [Typescript](https://www.typescriptlang.org)
* [Prisma](https://www.prisma.io)
* [PostgreSQL](https://www.postgresql.org)
* [TailwindCSS](https://tailwindcss.com)
* [ShadcnUI](https://ui.shadcn.com)
* [Vercel](https://vercel.com)### Hospedagem
A aplicação está em produção neste link: (https://bruno-carvalho-feitosa-barber.vercel.app).
## Iniciando o projeto
Primeiramente será necessário clonar este projeto em (https://github.com/BrunoCarvalhoFeitosa/barber.git), após o download será necessário abrir este projeto no seu editor e no terminal digitar npm install ou yarn, posteriormente é só rodar em seu terminal o comando npm run dev ou yarn dev, após isso, a página será aberta em seu navegador. Será necessário configurar em um arquivo .env as variáveis: DATABASE_URL_URL, GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET, NEXT_AUTH_SECRET.
### Pré-requisitos
* npm
```sh
npm install npm@latest -g
```### Instalação
1. Clone o repositório
```sh
git clone https://github.com/BrunoCarvalhoFeitosa/barber.git
```
2. Instale os pacotes do NPM
```sh
npm install ou yarn
```
3. Inicie o projeto
```sh
npm run dev ou yarn dev
```## License
Distribuído sob a licença MIT.
## Contato
Bruno Carvalho Feitosa - [GitHub](https://github.com/BrunoCarvalhoFeitosa) - [LinkedIn](https://www.linkedin.com/in/bruno-carvalho-feitosa/)