Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gsbenevides2/bethehero
Ajude ongs
https://github.com/gsbenevides2/bethehero
expo express javascript jest nodejs postgres react-native
Last synced: about 1 month ago
JSON representation
Ajude ongs
- Host: GitHub
- URL: https://github.com/gsbenevides2/bethehero
- Owner: gsbenevides2
- License: mit
- Created: 2020-03-26T02:05:34.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-08-08T21:34:30.000Z (over 1 year ago)
- Last Synced: 2023-08-26T20:54:49.567Z (about 1 year ago)
- Topics: expo, express, javascript, jest, nodejs, postgres, react-native
- Language: JavaScript
- Homepage: https://be-the-hero.gui.dev.br
- Size: 1.03 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
Projeto resultado da Semana OmniStack 11 da Rocketseat. Uma aplicação para ajudar as ongs na arrecadação de fundos.
👨💻 Tecnologias Utilizadas
- BackEnd
-
NodeJS: É uma plataforma que permite utilizar o JavaScript para criar aplicações do lado do servidor (server-side). -
Express: É um framework para Node.js que permite a criação de aplicações web. -
Knex: É um query builder para Node.js que permite a criação de SQL queries utilizando JavaScript. -
PostgreSQL: É um sistema gerenciador de banco de dados objeto relacional. -
Jest: É um framework de teste em JavaScript. -
Celebrate: É um middleware para validação de dados. - FrontEnd
-
ReactJS: É uma biblioteca JavaScript de código aberto com foco em criar interfaces de usuário em páginas web. -
Axios: É um cliente HTTP baseado em Promises para fazer requisições. -
React Router DOM: É uma biblioteca de roteamento. - Mobile
-
React Native: É uma biblioteca JavaScript de código aberto com foco em criar interfaces de usuário em páginas web. -
Expo: É uma ferramenta utilizada no desenvolvimento mobile com React Native que permite o fácil acesso às API's nativas do dispositivo sem precisar instalar qualquer dependência ou alterar código nativo. - Expo Mail Composer: É uma ferramenta que permite o envio de e-mails.
-
Axios: É um cliente HTTP baseado em Promises para fazer requisições. -
React Navigation: É uma biblioteca de roteamento.
📁 Estrutura de Pastas
🤖 Pasta BackEnd
Nessa pasta contem todo o código do servidor, que é reponsavel por fornecer ao front-end web e mobile os dados das ongs cadastradas e dos casos cadastrados por cada ong.
Acesso a API
A API está hospedada no Heroku e pode ser acessada através do link: https://google.gui.dev.br:3102. E o download de sua especificação usando o Insominia estão disponíveis no arquivo insomnia.json neste repositório.
Intalação
Você pode realizar a instação de duas maneiras:
1. Via Docker:
Execute o comando que está dentro do arquivo de shell script run_compose.sh
na pasta backend
.
Apos a execução desse comando o servidor estarar rodando na porta 3002
.
2. Via NPM:
Execute o comando npm install
na pasta backend
para instalar todas as dependências.
Configure um arquivo .env
na pasta backend
com as variáveis de ambiente de acordo com o arquivo .env.example
.
Por fim execute o comando npm start
para iniciar o servidor.
Apos a execução desse comando o servidor estarar rodando na porta 3000
.
🖥 Pasta FrontEnd
Nessa pasta contem todo o código do front-end web, que é reponsavel por fornecer a interface para o cadastro de ongs e casos.
Acesso a Aplicação
A aplicação está hospedada na Vercel e pode ser acessada através do link: https://be-the-hero.gui.dev.br.
Intalação
Execute o comando npm install
na pasta frontend
para instalar todas as dependências.
Apos a instalação das dependências execute o comando npm start
para iniciar o servidor.
Apos a execução desse comando o servidor estarar rodando na porta 3000
.
📱 Pasta Mobile
Nessa pasta contem todo o código do front-end mobile, que é reponsavel por fornecer a interface para o cadastro de ongs e casos.
Acesso a Aplicação
Por questões técnicas, o download da aplicação está disponível somente para android e fora da Google Play Store. Lembre-se de habilitar a instalação de aplicativos de fontes desconhecidas.Use o link para fazer download do APK.
Intalação
Execute o comando npm install
na pasta mobile
para instalar todas as dependências.
Apos a instalação das dependências execute o comando npm start
para iniciar o metro bundler.
Baixe o aplicativo do Expo na Play Store ou App Store.
Abra o aplicativo do Expo e escaneie o QR Code gerado pelo metro bundler.
Aguarde o carregamento do aplicativo.
🫶 Agradecimentos
- Agradeço a Rocketseat por proporcionar essa espetacular experiência.
- Agradeço especialmente seu CTO Diego Fernandes por proporcionar essa espetacular experiência. E também a todos que trabalham nessa empresa incrível e estiveram presentes no suporte do Discord durante a semana.
- Agradeço ao Filipe Deschamps por sempre estar apoiando a comunidade de desenvolvimento.
🔗 Links
📃 Licença
Este projeto está sobre a licença MIT. Veja ela em: LICENSE.
Feito com ❤️ por gsbenevides2