How to integrate my dApp into Aragon


#1

Hi,

I would like to integrate my dApp with Aragon but I’m struggling with a few questions. I’m new to Aragon and I need some assistance. Some kind help would be greatly appreciated!

Background
My dApp consists of a 3 smart contracts: an ERC20 compliant contract, a “ticket-issuer” contract, and a special multisig wallet.
The “ticket-issuer” contract receives ETH payments, which are proportionally distributed among the token holders.
The special multisig wallet contract executes transactions only if a majority of token holders decides so.
The owner address of the ticket-issuer is the multisig wallet contract address, allowing the token holders to control certain functions of the “ticket-issuer” contract such as issuing new tickets.
At the moment, the dApp (which is still under development) lacks of UI and other nice features which Aragon does have.

Questions
Basically my question is how to integrate my dApp into Aragon.

One simple way I can think of is to replace my current ERC20 compliant contract by the ERC20 generated by Aragon, leaving the rest of features such as the proportional payments and the issuance of tickets by the token holders. That, at least, would make the token holder experience much better.

Any ideas or suggestions, please?

Thanks for your support!


#2

Hi @aa34mp! Welcome!

I’m not sure I fully understand the ticket mechanism or what it is used for, but I think a good approach might be to use Aragon for token and voting aspects, and potentially create a custom Aragon App for the ticket issuer and ETH distribution component.

The ETH distribution to token holders feels like something that lots of organizations would be interested in as it essentially would allow distributing rewards pro-rata to token holders, if I understand correctly. I know @Quazia has done some thinking about reward distribution as part of his work on the planning suite and may have additional thoughts to share.

Making the ticket issuance an Aragon App would make dealing with upgradeability and governance fairly straightforward, and depending on whether you want people who are buying tickets to be exposed to the same interface as token holders, you could either have the full UI in Aragon, or just a management interface which is exposed to token holders in the your Aragon organization.

If you haven’t already checked it out there is a lot of good resources on hack.aragon.org, and we have a #dev-help channel on aragon.chat that is always poppin’ :champagne:.

Cheers!


#3

Yeah I think you’ll find the functionality you want from your multisig wallet is basically supported out of the box with aragon. That should ease your development a fair amount. If you’re dealing with a fairly small user base for ticket holders the whole application should be pretty trivial to get working in Aragon since you can do it in linear time, the difficulty is in distributing rewards to a token population in constant time complexity accounting for changes in token balances over time. I am working on rewards distributions and once that’s working you would probably be able to get functionality pretty close to what you’re describing without modifying any coded.

I guess my big question would be what your use case is, and what your motivation is.