Aragon Fundraising
Aragon Organizations
Continuous Fundraising Apps Suite forOverview
Aragon Fundraising is a suite of Aragon apps providing Aragon organizations continuous fundraising capabilities. It implements the following features.
Presale
This module allows organizations to set a presale target that must be reached during a given period of time for the continous fundraising campaign to actually start.
Automatic Batched Market Making
This module provides market liquidity to the fundraising campaign by automatically matching all the buy and sell orders according to a bonding curve tied to the Bancor formula. To mitigate front-running attacks and authorizing slow-trading this module also batches all the buy and sell orders received during a parametrable period of time to be matched given a common price.
Tap
This module enforce a tap-based control of the funds allowed to be withdrawn from the market-maker reserve pool to a discretionnary pool whose funds can be spent to sustain the organization. To provide more guarantees to the investors this tap module also allows this flow of funds to be floored [thus ensuring that the market maker reserve pool can't be emptied even slowly during a long period of time].
Architecture
Packages
NPM Packages
Package | Version | Description |
---|---|---|
@ablack/fundraising-bancor-formula |
BancorFormula computation contract |
|
@ablack/fundraising-batched-bancor-market-maker |
Automated market-maker batching orders filled through the BancorFormula |
|
@ablack/fundraising-tap |
Tap controlling the flow of funds from a reserve to a beneficiary | |
@ablack/fundraising-aragon-fundraising |
API contract providing a single entry-point to interact consistently with all fundraising-related contracts |
Contributing
We are highly open to the community helping use improve and shape the future of Aragon Fundraising
.
Install
Aragon CLI
npm install -g @aragon/cli
Aragon Client
git clone https://github.com/aragon/aragon.git
cd aragon
npm install
Aragon Fundraising Monorepo
git clone https://github.com/AragonBlack/fundraising.git
cd fundraising
npm install
Run
Aragon Devchain
From a new terminal window
aragon devchain
Aragon IPFS Node
From a new terminal window
aragon ipfs start
Aragon Client
From the Aragon Client directory
npm run start:local
Publish Fundraising Apps
From the Aragon Fundraising Monorepo directory
npm run publish
Deploy a test DAO
From the Aragon Fundraising Monorepo directory
npm run deploy:dao:rpc
Browse
Copy the newly deployed DAO address [0x...] and head your browser to
http://localhost:3000/#/0x...