GoBarber é uma aplicação onde são disponibilizados serviços de cabelereiro.
Os prestadores de serviço se cadastram, e na aplicação web podem ver seus agendamentos e seu perfil.
Os clientes podem se cadastrar na aplicação mobile e ali ver os prestadores de serviço cadastrados na plataforma e podem agendar um horário com seu cabelereiro favorito, escolhendo um dia e horário disponível.
Este projeto foi desenvolvido com as seguintes tecnologias:
-
- Node.js
- Express
- TypeOrm:
- Postgres
- MongoDB
- IORedis
- Redis DB
- Celebrate
- Class-Transformer
- Handlebars
- Node Rate Limiter Flexible
- JSON Web Token
- AWS SDK
- Nodemailer
Para rodar o projeto:
-
- Criar um arquivo .env seguindo o examplo do arquivo .env.example
- Criar um arquivo ormconfig.json seguindo exemplo do arquivo ormconfig.example.json
- Criar os containers docker do Postgres, MongoDB e ReadisDB:
docker run --platform=linux --name <nomeescolhido> -e POSTGRES_PASSWORD=<senhaescolhida> -p 5432:5432 -d postgres
-> Criar container docker do Postgres;docker run --name <nomeescolhido> -p 27017:27017 -d -t mongo
-> Criar container Docker do MongoDB;docker run --name <nomeescolhido> -p 6379:6379 -d -t redis:alpine
-> Criar container docker do RedisDB;- OBS: Se criar os containers com nomes diferentes aos quais estão no arquivo ormconfig.json, alterar o nome e senha dos bancos no código (alterar no arquivo ormconfig e no .env) de acordo com os colocados na criação do container docker;
- Abrir a pasta do backend no terminal e executar:
yarn
- Para baixar todas as dependências;yarn typeorm migration:run
-> Para realizar as migrations(criação das tabelas no banco de dados);yarn dev:server
-> Para executar o servidor NodeJS;
-
- Criar um arquivo .env seguindo o examplo do arquivo .env.example
- Abrir a pasta web no terminal e executar:
yarn
-> Para instalar todas as dependências;yarn start
-> Para rodar a aplicação no browser;
-
- Abrir a pasta mobile no terminal e executar:
yarn
-> Para instalar todas as dependências;- Android:
- Iniciar o avd do android ou conectar o disposito via usb;
adb reverse tcp:3333 tcp:3333
-> Para redirecionar o servidor Nodejs para o avd ou dispositivo;yarn start
-> Para iniciar o metroblunder;yarn android
-> Para iniciar o aplicativo no avd ou android;
- IOS:
yarn ios
-> Para iniciar o aplicativo no emulador;
- Abrir a pasta mobile no terminal e executar:
A aplicação foi desenvolvida durante o curso da RockeSeat como método de aprendizado das tecnologias de backend, frontend web e mobile, com NodeJS, React e React-Native.
O curso foi ministrado por Diego Fernandes