Skip to content

WesGtoX/be-the-hero

Repository files navigation

About  |   Technology  |   Layout  |   Getting Started  |   Usage  |   Roadmap  |   Contributing  |   License

Be The Hero CI GitHub top language GitHub language count GitHub last commit GitHub issues License

About the Project

Be The Hero is a platform to connect NGOs, institutions and volunteers who want to be the hero of a cause.

Technology

This project was developed with the following technologies:

Layout

Be The Hero Mobile Be The Hero Mobile Be The Hero Mobile

Getting Started

Prerequisites

Install and Run

  • Clone the repository:
git clone https://github.com/WesGtoX/be-the-hero.git
cd be-the-hero/

Run the API:

  1. Install the dependencies:
yarn install
  1. Run database migrations:
npx knex migrate:latest
  1. Run the API:
yarn dev
  1. To run the tests:
yarn test

Run the Web Application:

  1. Access the Web Application project folder:
cd frontend/
  1. Install dependencies:
yarn install
  1. Run the Web APP:
yarn start

Run the Mobile Application:

  1. Access the Mobile project folder:
cd mobile/
  1. Install dependencies:
yarn install
  1. Run the Mobile APP:
yarn start

Building Standalone Apps:

  • Android
expo build:android -t apk
  • iOS
expo build:ios

Obs: If you receive the error: connect ECONNREFUSED 127.0.0.1: 19001

Leave it running in another terminal window:

expo start

Then run the build again.

Usage

Routes / Resources

Method Endpoint Description
POST /sessions ONG login.
POST /ongs Register a ONG.
GET /ongs List all ONGs.
POST /incidents Register a incidents.
GET /incidents List all incidents.
GET /profile List a specific profile.
DELETE /incidents/:id Delete a incidents.

HTTP methods

  • GET: Fetching information from the back-end.
  • POST: Create information on the back-end.
  • PUT: Changing information on the back-end.
  • DELETE: Delete an information on the back-end.

Parameter types

  • Query Params: Named parameters sent on the route after the ? (Filters, Pagination).
  • Route Params: Parameters used to identify resources.
  • Request Body: Request body, used to create or change resources.

Database

  • SQL: MySQL, SQLite, PostgreSQL, Oracle, Microsoft SQL Server.

  • NoSQL: MongoDB, CouchDB, etc.

  • Driver: SELECT * FROM users.

  • Query Builder: table('users').select('*').where().

Roadmap

See the open issues for a list of proposed features (and known issues).

How to contribute

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project.
  2. Create your Feature Branch git checkout -b feat/my-feature.
  3. Commit your Changes git commit -m 'feat: My new feature'.
  4. Push to the Branch git push origin feat/my-feature.
  5. Open a Pull Request.

After the merge of your pull request is done, you can delete your branch.

License

Distributed under the MIT License. See LICENSE for more information.


Made with ♥ by Wesley Mendes 👋