fabriziovigevani / fundraising

Fundraising app and libraries for Aragon DAOs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool


Aragon Fundraising
Aragon Fundraising


Continuous Fundraising Apps Suite for Aragon Organizations

Build License Donate Chat Follow


Overview

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

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...

About

Fundraising app and libraries for Aragon DAOs

License:GNU Affero General Public License v3.0


Languages

Language:JavaScript 68.0%Language:Solidity 31.9%Language:HTML 0.1%