Skip to content

Desenvolvido durante a Semana Omnistack 11.0, instruída por Diego Fernandes - Contém toda documentação da aplicação web e mobile utilizando Nodejs, Reactjs e React Native.

License

Notifications You must be signed in to change notification settings

ryangalvaogp/Be-the-Hero

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Be The Hero

🚀 Semana OmniStack 11.0

GitHub language count Repository size GitHub last commit Made by Rocketseat License

Tecnologias   |    Projeto   |    Demo   |    Pré Requisitos   |    Instalação   |    Licença

🚀 Tecnologias

Esse projeto foi desenvolvido com as seguintes tecnologias:

:octocat: Projeto

Be the Hero é um projeto que visa ajudar instituições sem fins lucrativos, o cadastro das instituições é feito na web, através do app as pessoas podem entrar em contato para fazerem doações e ajudar em determinada causa!

💻 Web Demo

📱 App Demo

App mobile para acessar os casos e entrar em contato com as instituições.

💢 Pré-requisitos:

  • Ter o ambiente preparado com nodejs, node, npm, yarn.
  • Git instalado para clonar o projeto.
  • Instalar o expo na máquina e no dispositivo móvel.

Verificar instalação/ versões utilizadas

Verificar se os requisitos estão instalados, não é necessário utilizar as versões especificadas abaixo, porém no momento que foi criado esse projeto, essas são as versões do ambiente:

$ node -v  
v12.16.1

$ npm -v   
6.13.4

$ nodejs -v
v10.19.0

$ yarn -v   
1.22.4

$ expo --version
3.17.23

🔧 Instalação

Instalação Expo

Ubuntu:

$ npm install -g expo-cli

Instalar o expo no dispositivo móvel:


Executar o npm install para instalar as dependencias do package.json, criando a pasta node_modules.

O comando abaixo clona o projeto e faz a instalação.

git clone https://github.com/andersonheinz/react-semanaoministack11-rocketseat && cd react-semanaoministack11-rocketseat/backend && npm i && cd ../frontend && npm i && cd ../mobile && npm i

Caso ocorra algum problema, para instalar manualmente é necessário fazer o clone do projeto e dentro das pastas backend, frontend e mobile, executar npm install para instalar as dependencias do package.json, criando a pasta node_modules.

Executar aplicações Backend e Frontend

  • Abrir terminal na pasta backend e executar npm start
  • Abrir nova aba no terminal na pasta frontend e executar npm start

O comando npm start executa os scripts informados no arquivo package.json. No backend foi configurado para executar o projeto através do nodemon:

"scripts": {"start": "nodemon src/server.js"},

O Nodemon é um utilitário que monitora qualquer alteração na sua fonte e reinicia automaticamente o servidor.

Verificar se os backend e frontend estão funcionando.

Listar o JSON das ONG's cadastradas http://localhost:3333/ongs

Página index da aplicação web http://localhost:3000/

Executar aplicação Mobile

  • Alterar o IP da baseURL no arquivo react-semanaoministack11-rocketseat/mobile/src/services/api.js
const api = axios.create({
  baseURL: 'http://192.168.X.XXX:3333'
});

Para iniciar a aplicação mobile executar yarn start, expo start ou npm start.

$ expo start

Com o expo não é necessário instalar o Sdk do Android ou o XCode para MAC.

Irá abrir no navegador a página do expo.

Abrir o app do Expo instalado no dispositivo móvel, escanear o QR Code do navegador, e estará pronto para uso.

Caso apareça no terminal algum erro referente watchamn max_user_watches, execute o comando:

$ echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Error: Watchman error: A non-recoverable condition has triggered. Watchman needs your help! The triggering condition was at timestamp=1586779636: inotify-add-watch(/home/heinz/Projetos/react-semanaoministack11->rocketseat/backend/node_modules/expect/node_modules/ansi-styles) -> The user limit on the total number of inotify watches >was reached; increase the fs.inotify.max_user_watches sysctl All requests will continue to fail with this message until you resolve the underlying problem. You will find more information on fixing this at https://facebook.github.io/watchman/docs/troubleshooting.html#poison-inotify-add-watch. Make sure watchman is running for >this project. See https://facebook.github.io/watchman/docs/troubleshooting.html.

Executar novamente expo start, não deverá aparecer mais este erro no terminal, escaneie o QR Code.

Se o app não carregar e aparecer "could not load... timeout" será necessario desabilitar o firewall, e executar novamente o expo start e escanear o QR Code.

$ sudo ufw disable

📝 Licença

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

About

Desenvolvido durante a Semana Omnistack 11.0, instruída por Diego Fernandes - Contém toda documentação da aplicação web e mobile utilizando Nodejs, Reactjs e React Native.

Topics

Resources

License

Stars

Watchers

Forks