This project started as an inspiration from the success of Home Talkies' Help KFI Workers initiative, leveraging ideas and source code shared by Surya.
We've made several changes to the repository since then, specifically to achieve the following:
- Support both UPI and Traditional Bank Account Details.
- Change data gathering process such that we minimise risk of fraud by directly working with trusted NGOs.
- Add metrics for deriving numbers around success of our efforts, like which beneficiary is shown how often, and how many times do people actually copy details, and an optional prompt to ask how much someone has donated.
- Eliminate bugs that could have caused leak of mobile numbers of beneficiaries to the visitors of this site.
- Changes that allow us to deploy onto Google Cloud.
- Other performance improvements.
We understand it won't be straightforward to take the source code and start using it, but feel free to give us a nudge and we'd be happy to help you set it all up!
This project is deployed to Google Cloud's App Engine with PHP 7.3 Runtime.
- In order to deploy the application, ensure that you have JSON key in assets directory with you. This file is excluded from GitHub on purpose, because it includes sensitive backend access to our backend.
- You would also have to download and install Google Cloud SDK first. If you are a Homebrew user, you could simply run:
brew cask install google-cloud-sdk
- You have logged in with [email protected] email:
gcloud auth login
- You have set a
helpastranger
as your default project as follows:gcloud config set project helpastranger
Following command will create a new version for you from your local codebase. Run it from project root directory:
gcloud app deploy --no-promote
In order to promote the same version that you tested, run the following command from project root after replacing version:
gcloud app versions migrate <version>
- List existing versions:
gcloud app versions list
- Delete versions that aren't serving traffic:
gcloud app versions delete <version1> <version2> <versionN>