Numerous scandals related to the traditional charity processes affected the way public perceives charity and this increased the mistrust in charitable organizations. In fact, due to the self-isolation and lockdown volunteers are not able to collect on the streets; furthermore, the cancellation or postponement of mass events and individual or small group activities have brought community fundraising to a juddering halt. A substantial number of people have felt the desire to donate for the recent coronavirus pandemic. Surely, they have wondered how their donations were used, whether for the stated purposes or for others.
- There are two dashboards available (DONOR & NGO). If you go to the Donor Dashboard for the first time and connect your Metamask wallet, you will be logged in as a DONOR and will not be able to connect the same wallet from the NGO Dashboard. The same is true for a NGO account.
- If you're a NGO, you may submit a proposal (NGO Campaign/Event) and request funding.
- You may give crypto(MATIC in my case) to the created NGO Proposal if you're a DONOR. You may also see all of the donations that NGO has received.
- Both the NGO and the DONOR may see their account balance and previous transactions.
https://alias-charity-blockchain.vercel.app/
- Frontend : React.js
- Backend: Solidity
- Server Database: Moralis
- Chain : Polygon Chain
- Contract Deployment : Remix
- Website Hosting : Firebase
git clone https://github.com/Swanand-Wagh/Alias-Charity-DAO.git
cd Alias-Charity-DAO
npm install or yarn install
To run this project, you will need to create a .env file outside /src & provide your appId and serverUrl from Moralis
REACT_APP_MORALIS_APPLICATION_ID = xxxxxxxxxxxx
REACT_APP_MORALIS_SERVER_URL = https://xxxxxx.grandmoralis.com:2053/server
- Install Metamask
- Get the SERVER_URL & APP_ID after creating a Moralis Server & clicking on "View Details".
- Copy the contract, head over to Remix & paste inside /contracts.
- Head over to your selected network's faucets & get some free tokens.
- Open /helpers/networks.js & add the required network details, same on which you will deploy your contract & create a moralis server. You'd also have to change getBlockExplorer line from everywhere inside code to your specific network.
- Before deploying contract, make sure you select "Injected Web3" & use the same network inside Metamask as you used to create the moralis server. ( For ex. Ropsten, Mumbai )
- Copy the contract address you got after deploying the contract & replace with the address inside /utils/constants.js
- Copy the ABI you got after deploying & replace with the ABI inside /utils/ABI.json
- You're Done.
If you have any feedback or bugs to report, please reach out to me.