Welcome to the AUREUM, a Charity DAO DApp, built on the Concordium blockchain (currently exclusive to residents of India). This project aims to create a decentralized autonomous organization (DAO) to manage and distribute charitable donations transparently and efficiently.
AUREUM leverages the power of blockchain technology to ensure that charitable funds are collected, managed, and distributed in a transparent and trustless manner. By using a DAO, we eliminate the need for intermediaries, reduce overhead costs, and ensure that donations reach those in need more efficiently.
- Zero-Knowledge-Based ID System: Ensures user privacy while maintaining regulatory compliance, allowing users to prove their identity without revealing personal information.
- Transparent Donations: All transactions are recorded on the blockchain, ensuring transparency.
- Decentralized Governance: Donors can vote on proposals for fund distribution. Renounce votes if deemed necessary.
- Secure: Built on the Concordium blockchain, which provides strong privacy features and regulatory compliance.
- Automated Processes: Smart contract automate the collection and distribution of funds.
Note: Anyone can propose a charity in the application, but voting power is granted to those who deposit amount into the smart contract.
The easiest way to run the AUREUM application is by using Docker.
- Clone the repository:
git clone https://github.com/tr1sm0s1n/aureum-dao.git
cd aureum-dao
- Build and run the Docker container:
make up
This will build the client and server in a Docker container and start the application.
- Access the application:
Once the container is running, you can access the AUREUM DAO app by navigating to http://localhost:4800 in your browser.
If you prefer to run the application without Docker, you'll need to install the prerequisites.
- Rust for compiling and running the backend.
- Node.js for building the frontend.
- Clone the repository:
git clone https://github.com/tr1sm0s1n/aureum-dao.git
cd aureum-dao
- Install dependencies:
make install
- Build the frontend:
make client
- Build and start the backend:
make run
This will launch the application on http://localhost:4800.
Note: Country of residence can be updated based on the need. Simply edit
statement.json
.
Rust is required for the following steps.
- Install
cargo-concordium
:
make concordium
- Build the smart contract:
make contract
- Test the smart contract:
make test
Check out the Developer Docs for instructions.
Update the config.ts
file with the latest CONTRACT_INDEX
, MODULE_REF
and RAW_SCHEMA_BASE64
if necessary.
Contributions are what makes the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/<feature_name>
) - Commit your Changes (
git commit -m '✨ | add <feature_name>'
) - Push to the Branch (
git push origin feature/<feature_name>
) - Open a Pull Request
Feel free to open issues or discussions for further conversation. 😊
This project is licensed under the MIT License - see the LICENSE file for details.
- Concordium for their blockchain platform and development tools.
- Open-source community for various libraries and tools used in this project.