Coder Social home page Coder Social logo

fekow / gobarber Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 6.45 MB

Aplicação completa de uma barbearia fictícia.

License: MIT License

JavaScript 27.90% HTML 0.28% TypeScript 59.84% Starlark 0.40% Java 4.50% Ruby 3.58% Objective-C 2.96% Shell 0.21% Handlebars 0.34%

gobarber's Introduction

GoBarber

Sobre o projeto | Guia de instalação e execução | Licença | Versão Web | Versão Mobile | Backend

🚀 Sobre o projeto

Aplicativo feito para um salão de beleza fictício.

Aplicativo disponível nas versões:

  • Web
  • Mobile

os dois utilizando o mesmo backend.

💻 Versão web

Este aplicativo foi construido utilizando React e Typescript

Nessa aplicação é possivel que o prestador de serviço se cadastre com senha e foto e faça login no sistema para vizualizar suas marcações para os proximos dias, com notificações dinâmicas, além de receber um email automático sempre que tem marcações ou cancelamentos.

Layout

📘 Tecnologias

📱 Versão Mobile

Este aplicativo foi construido utilizando React Native e Typescript

No aplicativo é possivel criar uma conta e realizar login como consumidor, na primeira página vocÊ visualiza seus agendamentos futuros e passados, podendo cancelar os proximos, desde que com tenha no mínimo uma hora de antecedência.

A pagina de marcação lista todos os cabeleireiros registrados e ao selecionar um desses mostra seus horarios disponiveis de acordo com a data selecionada. Também é possivel atualizar seu cadastro e senha do seu perfil.

Layout

📘 Tecnologias

💾 Backend

O backend foi criado utilzando nodeJS e Express, em formato RESTFUL com estrutura MVC.

Esse backend é responsável por disponibilizar as rotas para usuários e provedores e contem as regras de negócio em seus controladores, como checagem de horários, intervalo de horários permitidos, cancelamentos e envio de emails automático usando templates predefinidos.

Outro papel importante do backend é a interação com o banco de dados, que nesse caso utiliza um banco SQL, NoSQL e o Redis. O Redis é um armazenamento de estrutura de dados de chave-valor, que é utlizado para lidar com a fila para envio de emails junto com o bee-queue, que foi criada pra lidar com diversos requerimentos de envio de email e que não sobrecarrega o servidor principal, possibilitanto que o backend responda mais rapidamente os dados importantes enquanto a fila roda em outro processo de fundo.

💻 Tecnologias

📚 Guia de instalação e execução

Pré-requisitos

Como executar

Para rodar a versão mobile e web tenha sempre o banco de dados e o servidor rodando.

Banco de dados

Rode estes comandos para instalar os 3 banco de dados do backend pelo docker.

  • docker run --name redisbarber -p 6379:6379 -d -t redis:alpine

  • docker run --name database -e POSTGRES_PASSWORD=docker -p 5432:5432 -d postgres

  • docker run --name mongobarber -p 27017:27017 -d -t mongo

  • O login da database será: 'postgres' e a senha: 'docker'

  • Inicie o banco de dados docker start redisbarber database mongobarber

Backend

  • Clone o repositório,

  • Execute cd backend yarn para instalar as dependências do servidor.

  • Execute yarn sequelize db:migrate para criar as tabelas

  • Para rodar o servidor, abra dois terminais na pasta e rode yarn dev e yarn queue.

Versão web

  • Para abrir a versão web execute cd frontend e yarn para instalar as dependências.

  • Para iniciar rode yarn start.

Versão mobile

Acesse aqui a documentação da Rocketseat para montar seu ambiente Mobile.

💡 Como executar

  • Para abrir a versão mobile execute cd mobile e yarn para instalar as dependências.
  • Preencha seu ip de acordo com o da sua maquina no arquivo mobile/services/api.js
  • Usando um emulador rode yarn android ou yarn ios dependendo do sistema que estiver usando para instalar o app.
  • Para iniciar o aplicativo rode yarn start
  • Rode adb reverse tcp:8081 tcp:8081 e adb reverse tcp:1337 tcp:1337 para o emulador acesar o servidor

Com um dispositivo físico

Tenha certeza que está com o modo desenvolvedor ativado e e a opção debugar USB ativada.

  • Conecte seu celular pelo cabo USB.
  • Verifique se está tudo certo rodando adb devices e seu dispositivo aparecer como device.
  • Rode yarn android ou yarn ios dependendo do sistema que estiver usando para instalar o app.
  • Rode yarn start para iniciar o aplicativo

📃 Licença

Esse projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.