Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tr1sm0s1n/aureum-dao
AUREUM, a Charity DAO DApp, built on the Concordium blockchain.
https://github.com/tr1sm0s1n/aureum-dao
concordium dao dapp nodejs rust smart-contracts zero-knowledge-proofs
Last synced: 24 days ago
JSON representation
AUREUM, a Charity DAO DApp, built on the Concordium blockchain.
- Host: GitHub
- URL: https://github.com/tr1sm0s1n/aureum-dao
- Owner: tr1sm0s1n
- License: mit
- Created: 2024-06-21T16:38:53.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-09-06T14:38:09.000Z (4 months ago)
- Last Synced: 2024-09-06T16:50:02.310Z (4 months ago)
- Topics: concordium, dao, dapp, nodejs, rust, smart-contracts, zero-knowledge-proofs
- Language: Rust
- Homepage:
- Size: 8.34 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# AUREUM - Concordium Charity DAO
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.
## Table of Contents
- [Introduction](#introduction)
- [Features](#features)
- [Getting Started](#getting-started)
- [Docker Setup (Recommended)](#docker-setup)
- [Manual Setup](#manual-setup)
- [Usage](#usage)
- [Testing the Smart Contract](#testing-the-smart-contract)
- [Deploying the Smart Contract](#deploying-the-smart-contract)
- [Contributing](#contributing)
- [License](#license)
- [Acknowledgements](#acknowledgements)## Introduction
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.
## Features
- **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.
## Getting Started
### Docker Setup
The easiest way to run the AUREUM application is by using **Docker**.
1. Clone the repository:
```bash
git clone https://github.com/tr1sm0s1n/aureum-dao.git
cd aureum-dao
```2. Build and run the Docker container:
```bash
make up
```This will build the client and server in a Docker container and start the application.
3. Access the application:
Once the container is running, you can access the AUREUM DAO app by navigating to http://localhost:4800 in your browser.
### Manual Setup
If you prefer to run the application without Docker, you'll need to install the prerequisites.
#### Prerequisites
- **Rust** for compiling and running the backend.
- **Node.js** for building the frontend.#### Installation
1. Clone the repository:
```bash
git clone https://github.com/tr1sm0s1n/aureum-dao.git
cd aureum-dao
```2. Install dependencies:
```bash
make install
```4. Build the frontend:
```bash
make client
```5. Build and start the backend:
```bash
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`](./server/config/statement.json).
## Usage
### Testing the Smart Contract
**Rust** is required for the following steps.
1. Install `cargo-concordium`:
```bash
make concordium
```2. Build the smart contract:
```bash
make contract
```3. Test the smart contract:
```bash
make test
```### Deploying the Smart Contract
Check out the [Developer Docs](https://developer.concordium.software/en/mainnet/smart-contracts/guides/quick-start.html) for instructions.
Update the [`config.ts`](./client/src/config/config.ts) file with the latest `CONTRACT_INDEX`, `MODULE_REF` and `RAW_SCHEMA_BASE64` if necessary.
## Contributing
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!1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/`)
3. Commit your Changes (`git commit -m '✨ | add '`)
4. Push to the Branch (`git push origin feature/`)
5. Open a Pull RequestFeel free to open issues or discussions for further conversation. 😊
## License
This project is licensed under the MIT License - see the [LICENSE](./LICENSE.md) file for details.
## Acknowledgements
- [Concordium](https://www.concordium.com/) for their blockchain platform and development tools.
- Open-source community for various libraries and tools used in this project.