-
Notifications
You must be signed in to change notification settings - Fork 78
Membership and subscription app for Aragon DAOs #161
Comments
Hey there @evvvritt, thanks for the proposition and your interest in contributing to Aragon! The use case you detail here is interesting: enabling Aragon DAOs to offer subscriptions to their users in order to generate recurring revenue streams makes a lot of sense, especially considering that Aragon DAOs do not have “traditional” monetization modules for now. This being said the current content of the proposal raises a few important questions:
Looking forward to discussing more |
Hi @LouisGrx! Thanks for considering our proposal. If approved for funding requests, we planned to apply for a $50K DAI grant with a success reward of 12K ANT to cover three developers over a three month timeline. We definitely hope to launch on mainnet so we can utilize these applications for a community-based music platform in early stages of development (currently applying for funding). If the Nest program could aide a security audit that would be great! For the subscription app, we plan on following EIP1337 for subscriptions and made a rough outline for the app's permission configuration. We planned to provide more details in the request for funding but we can do so now, if preferred? |
Hey there @evvvritt, thanks for the quick reply.
Overall the application is appealing and we would like to approve it to have a comprehensive RFF. However let us signal that the Nest budget is drying up for this period. We will have to prioritize over what to fund before we hopefully get more budget during ANV#3. How Flexible would you be in terms of starting date? Approving this proposal for a RFF! |
Hi @LouisGrx—thanks for approving! The revised funding and success scheme is totally fine. And fully understand timing considerations—a later starting date actually works well for us. In the meantime, we will begin working on our RFF. If you advise we submit at or around a certain date, please let us know. Exciting! |
Hey there, Awesome to hear that! The main deadline we're looking at right now is Aragon Network Vote #3 happening on July 27th. After that we will know if Nest has more budget available or not. For the RFF submission, it's whenever you are ready and ideally before the end of July. Thanks for getting involved! |
Memberships and subscriptions are a feature that we would really like to see developed on Aragon. This would allow fans to support creators with monthly recurring subscriptions and it would also allow developers to create SaaS integrations for Aragon. @evvvritt As you might have seen, the Nest program received more funds in ANV3! If you're still interested in developing this project, please submit an updated application! :) |
Hi @burrrata thanks for the encouragement and update on funding :) This summer our team couldn't find the time but things are opening up and we hope to finally submit our application by the end of the month. Many thanks! |
Hi Aragon! Please find below our updated application for funding to develop an Aragon Membership App and NFT Manager App. We have also created a video demonstrating a proof-of-concept implementation of this app. ApplicationMembership Subscription and Functional NFT Aragon AppsAn application on the Aragon platform that allows an organization to create different membership subscriptions that grant an optional NFT as proof of membership. Users can subscribe and manage their subscriptions via the Membership app. NFT Tokens can also be minted manually and managed via the NFT Manager app. TeamLead: Team: Nicolas Kort Everett, Billy and Nics are members of Bin Studio, a multi-disciplinary studio based in Berlin, and have been collaborating for the past few years on several blockchain projects, including Clovers Network. (Bin Studio is not currently present on the Aragon Forum) ProgressHow far along are you? We have developed a simple prototype to demonstrate the base functionality of this Aragon app, found in our project’s GitHub. Is anyone using your product/application? No, this app is purely a proof of concept and lacks many of the features that will make it a complete experience. We are collaborating with a former internet radio station in Berlin as a possible first user of this application framework. If you've applied previously with the same idea, how much progress have you made since the last time you applied? What has changed? We applied earlier this year but did not have the capacity to complete the proof of concept. Since then we have created a proof of concept. Idea ProblemWhy did you pick this idea to work on? Do you have domain expertise in this area? Subscription models are a popular form of financing cultural institutions but the current options of decentralized models lack a full range of features. An important enhancement for us is granting NFTs as tokens of membership to visually display patronage and support for specific causes or communities. We have been developing proof of concepts in the blockchain space for a couple years now. We come from a background in the arts and are most interested in community owned advancements in technology. DAOs offer an interesting new framework to configure collective action and community, especially around music and the arts. What's new about what you're making? What do people resort to because it doesn't exist yet (or they don't know about it)? Because something like this doesn’t exist people resort to using Patreon. Patreon has a high fee because they dominate this market. Decentralized solutions can under-cut these costs but need to deliver a competitive user experience. We hope to offer an intuitive alternative that allows organizations to design and manage their own memberships independently. Have you talked to people about what you're making? Do people want it and do you have examples of this? There is a high demand for subscriptions on the blockchain, EIP1337 is an example. MarketWhat is the target market or end user in mind for this project? We have small cultural communities in mind but are designing the application for as wide an audience as possible. What are the alternatives or competitors to this project? Patreon most directly, GitCoin Grants and StakeTree could also be considered. How will this project get users? If your project is the type that faces a chicken-and-egg problem in the sense that it won't be attractive to users until it has a lot of users (e.g. a marketplace), how will you overcome that? Given the high utility of subscription funding models, we hope it will be included as a default application in the relevant DAO templates. Additionally, a successful application with the online music-community we’re collaborating with would be a natural promotion. A promotional website will also be considered. LegalWill you be using an Aragon DAO for operating this project and receiving the funds? Yes. We plan to create a DAO for our Bin Studio to operate funding. Are any of the project team members covered by non-competes or intellectual property agreements that overlap with your project? If so, please explain. Billy is an employee of All In Bits, GmbH (dba Tendermint Inc.) with an explicit exception to non-compete clauses via Bin Studio that allows him to work on projects like this. For the sake of transparency, Tendermint Inc. is developing the Cosmos-SDK, a blockchain development framework which will be used by the upcoming Aragon chain. AragonWhy do you think Aragon is a good fit for this project? Aragon allows for groups of people to organize in a decentralized and democratic manner, adding a subscription funding model only helps bolster the success of these groups to operate. Are there any existing Aragon projects that are similar or complementary to your project? DappNode NFT Manager has similar functionality to the NFT app but doesn’t cover the use case of the Membership app or the full flexibility of an NFT Manger. FundingHow much money are you requesting as a grant? (the maximum grant size we provide is $150k in USD value)
Have you already received any grants or funds from 3rd parties? If yes, how much? Are you applying for funding to any other DAO platforms or grant programs? If so, that is not a problem as it increases the likelihood of your success, but it's important that we can take that into consideration if your project relies on multiple grants. How do you plan to deploy grant funds? (split between research/development/marketing/etc) What is your expected monthly burn rate? Do you think this project will require additional funds once you have depleted the grant funds? If so, why? Where do you plan on acquiring further funding? RoadmapHow long do you plan on working on this project before shipping? What are the key milestones you have to accomplish before you can ship a production ready product to users?
NotesMembership App PrototypeA prototype of our app can be found on our project’s Github and tested locally. We’ve also produced a video to demonstrate the basic functionality. Below are a few notes on the prototype:
VideoKey DeliverablesThe final app will aim to achieve the key deliverables outlined by Luke Duncan (#196):
|
Hey @evvvritt, Nice to see you again and thanks for this comprehensive proposal. If I get it correct,
Could you please provide more details on this 👇 ? What exactly is the role of this milestone?
Would you build on the work from DAOnuts? Thanks! |
Hi Louis! Good to hear from you, your summary is correct. To clarify, the NFT isn’t burned but will be considered expired after the given term in which its valid (1 month, 1 year, …). After which, a new payment is required to grant a new NFT. We felt retaining the NFT could be a nice way for members to exhibit their level of support. Regarding your quoted text:
This pertains to how subscriptions might be collected periodically without an admin manually capturing each due payment. One idea we will explore is to develop off-chain serverless functions that when called, loops through each due term, collects payment and grants a new NFT. These serverless functions could be published as a template for DAOs to use, and/or a service could be built around them. Alternatively, we would explore the viability of leveraging an EIP1337 relayer network to handle payment capture. Looking at the DAOnuts work, they appear to be executing a different model of subscriptions with an implementation that as yet wouldn’t translate to our own. As I understand, in their app a subscriber pre-pays for a duration of time and must continually do so. In our model, a subscriber pre-approves the contract to withdraw funds up to an amount the subscriber specifies; then payments can be collected periodically by anyone willing to pay the gas. This means the subscriber just needs to ensure they have enough funds in their wallet at each term, rather than have a large sum to pay ahead. It also allows them to cancel a membership without the issue of receiving a refund for pre-paid terms. Lastly, in case unclear, we would allow admins to create memberships paid with any token, such as DAI (rather than just the DAOs token). Hope that helps, looking forward to more feedback! |
This is really cool! Thank you so much for building a proof of concept and re-applying :)
Why is research still needed and what exactly would be involved? What is the target market and how will you reach those users? Essentially, please breakdown the research and marketing milestones the same way the development milestones were broken down. |
I like that with this approach users are only required to make a single approval, and subsequent terms can be paid by a service without further interactions. However, I'm a bit concerned about the pattern of approving multiple payment terms if the contract that is approved is upgradeable. Can you clarify if that is the case in your prototype and/or if this could be addressed by having the Membership app be upgradeable, but the subscription contract that receives the approval be static?
Are you thinking that each term would create a new NFT for that term? Or do you mean that in the event a member unsubscribes / doesn't renew (by making a new approval?) they would keep their NFT, and later if they re-subscribe they would get a new NFT? If a developer wanted to restrict access to content or a service based on an active membership would they be querying the NFT(s)? Or would the NFT be intended purely as a badge for the purposes of showcasing patronage/support? |
Hi @burrrata!
We’d like to research different methods for processing payments programmatically. In its simplest form our app only allows payments to be processed manually one at a time by a user. There is no restriction on who processes them, as it is simply executing a token transfer on behalf of the pre-approved account and amount. There seem to be a couple ways to improve this process. Either with meta-transactions that are executed by a relayer network (like Gas Station Network) with or without the 1337 standard, or even with a more simple serverless client that holds small amounts of ether in order to execute. There are also possible configurations where the gas is sponsored by the DAO and where the payment itself includes gas cost that is exchanges atomically to pay for gas. We want to figure out which method has the best combination of viability and simplicity and need to do some further research to draw conclusions.
Our target audience are groups or organizations in the cultural spheres that would benefit from subscription based funding models. This project initiated from a collaboration with a former internet radio station exploring decentralized means of funding and content distribution. An alternative example might be an organization like Guild.is, a decentralized artist network, whose users are more familiar with blockchain technology. We plan to develop a simple holding site to present the app’s features and share within our network. Although we are motivated around developing this for the cultural sphere, we plan to design the app to be as widely accessible as possible. Here is a more elaborate Roadmap to shed light on research and marketing milestones. Roadmap
|
And hi @lkngtn! —thank you for your comments
As mentioned previously, parts of the architecture require further research. In terms of upgradability, it is our understanding that all APM apps are using proxy contracts which maintain a consistent contract address but delegate functionality to replaceable contracts. If that is the case the contract which has been approved to move tokens should stay the same. There could also be a concern in that after approving a contract to spend tokens on a users behalf, the contract may be upgraded into a malicious contract that does something else with these approvals. The first mitigation to a malicious event such as that is to not use a maximum approval but only encourage a user to approve some amount of tokens for a very specific but limited period (1 year for example). Providing an architecture wherein there is a static Subscription contract approved for transferring erc-20s which can not be upgraded is an interesting idea. It would require some rather custom deployment methods and a custom upgrade path as well which would need some more research but seems like a valuable endeavor.
Canceling mid-term does not result in a refund for the remainder of that term. With that in mind, after a cancelation, the last minted NFT remains valid until the next renewal period. At that point no new NFT would be minted and their membership status would become invalid. The NFTs which are created are kind of like the “Valid until” stickers which are put on license plates. They are not revoked after they become invalid, it is the lack of a valid NFT which shows a lapsed membership.
It would be up to the specific developer on which method they use for verifying a user. We imagine a system where the NFT metadata is served by a service which queries the date minted and duration of the NFT. That means the validity of the membership could be confirmed just by checking the NFT metadata, or it could be queried directly within the subscription contract. The subscription contract contains an endpoint to determine if a subscription is valid or not, so it depends more on the developers desire to interact more or less with a contract directly. In that way the NFT can be used for access as well as showcasing patronage/support and specific purposes :) |
Thanks for the detailed and helpful answers! I see that the research portion is set for Phase 3. The Nest program doesn't really fund research, but the Community Funding DAO (CFDAO) does. Could you submit a CFDAO proposal for the research aspects of this proposal, then circle back to the Nest program once everything's been ironed out and it's simply a matter of execution?
|
Hi @burrrata, I’m wondering if our roadmap misrepresented our Phase 3 section, which only states research but we are actually building one of these programmatic means of collecting payments as well. In lieu of focusing on building, we now propose revising the scope for Phase 3 to only building the serverless functions option as a means of collecting payment (forgoing the Relayer Network option). As such, we have removed half a week that would have been used to evaluate the viability of using the Relayer Network. Perhaps we can apply for CFDAO and/or Nest funding to extend the Subscription app to leverage a Relayer Network at a future time. I’m updating the roadmap accordingly.
|
Makes sense. Thanks for explaining that. Also, sorry for taking so long to reply. NFTs, memberships, and subscriptions are equally complex and important. Currently doing a deep dive into all the ways they can be configured and how that might look for Aragon DAOs. Will be able to circle back in a few weeks with more info as to how we want to proceed. |
Ok, thanks for the update @burrrata. We look forward to your assessment. |
Hi Aragon, I hope all’s well. I wanted to check in on the status of our proposal, especially given current events. If Nest proposals are on hold, can we expect them to be revisited at a later date? Any updates are appreciated so we can plan accordingly. Many thanks |
Aragon Nest Proposal: Membership Subscription and Functional NFT Aragon Apps
Authors: Everett Williams, Billy Rennekamp (Bin Studio)
Abstract
This proposal comprises of two unique Aragon apps that can work in coordination: a Subscription Manager and a Non-Fungible Token Manager (NFT). DAOs can manage subscription products in the Subscription Manager (annual payment, monthly, weekly etc.), which optionally grant an NFT as proof-of-payment in coordination with the NFT Manager app. These membership assets could be used for access control to member-only content on other platforms, like a chat or a forum. While DappNode has developed a basic NFT Manager, we are proposing a more robust app that will support an upgradeable token URI endpoint that will allow for a pure return value making for very cheap metadata management. This technique can be seen in more detail here.
Use Case
The apps could be used independently but we imagine the most effective use case would be in tandem. A typical user flow for our use case might look like the following:
https://berlincommunityradio.com/membership-token/{tokenID}
(The base URL is configurable, and prevents the need for storing a separate string in the contract for each NFT. The metadata endpoint can also be updated as more decentralized solutions become available).Deliverables
Grant size
Funding: Up to $150k in DAI, split into chunks paid out over achieved deliverables.
Success reward: Up to 30k ANT, given out when all deliverables are ready.
Application requirements
Development timeline
The text was updated successfully, but these errors were encountered: