Skip to content

Be The Hero is a complete solution including backend, fronted web and mobile that allows Non-Governmental Organization to share their incidents and find interested on helping them. This project built using Node.js, React.js and React-Native also implements i18n and IBM Watson translation service.

Notifications You must be signed in to change notification settings

guipiveti/Be-The-Hero

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Donate

Be The Hero

📁 The Project

Project developed during the 11th OmniStack Week promoted by Rocketseat. Be The Hero allows Non-Governmental Organization to share their incidents and find interested on helping them. The software implements a web interface where each NGO may manage their incidents. The mobile app is created for the general user see the registered incidents and contact the organization via email or WhatsApp. The system works with an REST API on the Back-End that communicates with the Front-End and the SQL database.

📈 Extras

The project includes the i18n package to allow use in different languages. The application checks the device's language and displays the translated version, when available. If the device`s language is not available, use English version will be used. The server also has an integration with IBM Watson translation API. When the server receives an Incedent request it sends a response with the title and description translated to the requested language.

🚀 Technologies

Back-End Web Mobile
Node.js ReactJS React Native
SQLite Axios Axios
Nodemon Expo
Axios i18n
Jest IBM Watson
Cors
Express.js
Knex

📷 Screenshots:

Web Mobile
LogonLogin page Casos RegistradosList of Incidents
Cadastro da ONGRegister page Detalhes do CasoDetails page
Novo IncidenteAdd Incident page
GerenciamentoIncidents management page

💻 Installation

Running the Back-End:

Before running the Back-End you should register to IBM Watson and subscribe to a Language Translator Service API. (The Lite plan is free and has a quota of 1000000 characters/month).

Now you should rename the .env.example file to .env and inserting your API Key inside the file. Finally run the following commands:

cd backend
npm install
npm start

Running the Web Front-End:

cd frontend
yarn install
yarn start

The web project will start running on localhost:3000.


Running the Mobile App:

Edit the src/services/api.js file using you Back-End server/computer IP:

import axios from 'axios';

const api = axios.create({
    baseURL: 'http://your-server-ip-goes-here:3333'
})
export default api;
cd mobile
npm start

You may now use an emulator or your physical device to test the app. You must download Expo app from Play Store or App Store then scan the generated QR code.


About

Be The Hero is a complete solution including backend, fronted web and mobile that allows Non-Governmental Organization to share their incidents and find interested on helping them. This project built using Node.js, React.js and React-Native also implements i18n and IBM Watson translation service.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published