-
Title - dodao.dev: Ecosystem Grant Draft Proposal
-
Author - Dodao
TLDR -
- Primary Goal-
Building Connected Contracts Use Cases (using XCM and other message passing protocols)
- Project Description - dodao.dev is a decentralized and permissionless task marketplace for tech talents and art creators. Our documentation(work on it is ongoing) is available at docs.dodao.dev
-
Requested GLMR Grant Amount - [GLMR 675K]
-
Use of Grant - Finishing the development of smart contract and Dapp(for Web, Android and IOS), performing an independent smart contract audit, deployment to the mainnet and performing launch development activities.
-
Motivation for Grant Amount- Dodao task marketplace will be deployed to Moonbeam mainnet taking the advantage of Connected contracts to bring users from chains supported by Axelar/Hyperlane/LayerZero/Wormhole to Moonbeam ecosystem. Please see
Timing totals
,Running the math on the grant ask
andRationale
subsections for details.
We are applying for a Moonbeam Ecosystem Community grant because we strongly believe that our project will be beneficial for the Ecosystem and the community which we see as its future governor. We have started building Dodao targeting Moonbeam as a main chain from the beginning, because of its Connected Contracts philosophy, speed and community support.
- Updates (19/03/23)
-
Primary Goal, specified single goal.
-
Motivation for Grant Amount, made motivation more exact to cover the goal.
-
Project Overview and Relevant KPIs, added information about business model, traction, current development status and reached milestones
-
Team Experience, added linkedin profile links.
-
Timeline and Milestones for Use of Grant, added after-launch development milestones.
-
Vision Of Success, added first target.
Project Overview and Relevant KPIs -
2022 Q4 won a prize in Moonbeam connected contracts hackathon.
2023 Q1 received a grant($5k) from Witnet foundation.
Business model
User balance
- We will balance the developers with customers by motivating these groups by issuing or requiring NFTs.
Initially after the mainnet launch we will introduce valuable NFTs both for Customers and Performers, we will be issuing such NFTs at a limited amount to first Customers and Performers in order to motivate them using Dodao.
-
When there will be too many developers competing for too few tasks, we will be issuing NFTs to customers on Tasks creation and completion providing them extra values on Dodao project such as NFT Task tags which allow only the developers who own such tags to participate in the Task.
-
When there will be too many customers, we will incentivize new developers to join Dodao by issuing them extra NFT tags on Task completion which will motivate them completing more Tasks.
We will also be encouraging Performers and Customers inviting more users and will also reward them with NFTs.
- At the next steps we plan introducing Spring, Project and Organizational NFTs.
With Sprint NFT Customers can group tasks into features, features into user stories and performers can plan the tasks in sprints.
With Project NFTs Customers can group Tasks and Sprints and assign selected Performers, such as their own staff to the project.
With Organizational NFTs Customers can create organization pages privileging an access to the Organization to the holders of a such NFT.
Dodao business processes
Dodao following a KANBAN business process style with strict user roles. You can see the processes description in our docs.
Tasks auditors selection
- Initially we will grant some amount of “generic” Auditor NFTs to our active testers, later we will grant Auditor NFTs to developers and creators who have successfully completed tasks, further distinguishing Auditor NFTs by the area of competence.
Therefore there will be a distinguished “arts creator Auditor” NFT or “Web3 developer Auditor” NFT and so on. Of course such categorization will come based on on-chain metrics and feasibility.
- Auditors must be selected very carefully and they will have to follow strict Auditor guidelines which define the Audit process(a draft here), later in the subsequent product release(Product 4 - DAO in our roadmap) we plan to implement DAO voting feature for Audits.
Fees and sustainability
-
Dodao is fully blockchain project with its static assets hosted on Arweave permaweb, therefore it will not consume any maintenance costs for servers or equipment. Apart of that we need to receive funds for both further development and marketing, as per our calculation Dodao will accumulate $383K revenue from Task fees and NFTs at our target 3, having 9600 total active users. Our plan is to charge Customers 2.5% from each Task created, and sell a NFT(to Customers and Performers) per every 5 Tasks. Therefore, when having 8000 Customers and 1600 Performers, we expect them to create 10400 Tasks with an average spend of $880 and mint 2080 at average price of $60.
-
We suppose that brilliant performers will be a Dodao strength, therefore currently we have no plans to have a % fee for Performers, but we are going to offer them paid NFT minting (which will give them privileges, boosts and profiles highlighting for example).
-
We plan to offer paid utility NFTs, such as tags, sprint, project and organizational NFTs, minting to customers.
-
Auditors will receive a 10% performance fee from the Task they settle, in case when a Performer requests an Audit, he deposits a 10% fee to the Task to fund the Audit.
On the image below can see a projection of our two main revenue streams: Task fees and utility NFTs, these funds are going to be transacted, locked and withdrawn to and via Moonbeam network.
Initial target audience
We target initially the blockchain enthusiasts and existing Web3 users, although we are planning to run a few pilots with the traditional businesses by using our connections.
Expanding user base
Our marketing activities will cover both web3 and web2:
-
invite developers from opensource blockchain projects to mint their NFT profile and skill tags at dodao, we have already launched developer and art-creator on-boarding programs
-
promote usage of public tasks to opensource projects for funds collection to implement features the community wishes, we have already launched ambassador on-boarding program
-
participate in developer conferences and run social media campaigns to spread the word about dodao
-
partner with other ecosystem projects in order to put dodao into their processes
-
host hackathons for ecosystem and opensource projects
-
partner with real-world businesses driving their digital transformation
Web3 marketing
Dodao business model is self-regulating, meaning that on successful adoption by the community, the community will perform a leading role in running the business operations, such as Auditing and Task moderation. Therefore, we plan to intensively target the Web3 community by spending the most of the revenue for marketing and further product development.
Software development market is huge and growing, and we are planning to first take a part of it which is already familiar with crypto.
Web2 marketing
We plan to also provide thorough tutorials to our Web2 users which we will initially test on our pilots. To compete with TaskRabbit or Mechanical Turk we will heavily market Dodao to the key audiences of these platforms by offering a much lower commission fee, we also expect that some Tasks reselling and arbitrage activities will happen on our platform because of easiness of external interaction with our smart contract.
Product-fit analysis
We have conducted several early surveys across the potential Performers and Customers and we have compiled their feedback to answer the following questions.
Q: Is there a user segment who indicate they will switch to Dodao?
A: When targeting Web3 users, people say they tend to prefer decentralized products and “cash” payments rather than centralized service providers.
A: When targeting Web2 users, they say if it would be easy to use they would try it out for lower fees and a possibility to enter the new market.
Q: Have some users rejected similar products but would like to use Dodao?
A: Because of centralization and high fees of Web2 projects users may want to try our Web3 solution
Q: Do users recognize the value and benefits of Dodao in comparison with traditional market leaders?
A: Our testers report they liked our business flow and design simplicity
We are providing a unique value proposition set:
-
Purely blockchain solution with low-costs and technological community
-
Global market reach
-
Accurate on-chain Performer performance rankings
-
NFT marketplace as an additional revenue stream for the Performers
-
Sustainable decentralized multiplatform dApp solution
-
DAO business model allowing the user to participate in Dodao governance and ownership
We assume that when we manage together to launch Dodao as a major crypto marketplace, it will be generating a constant money flow for Moonbeam exposing its utility to the real world.
Traction:
Early sign-ups
We have received 29 developer and 67 art-creator resumes(updated 18/03/23) and we have a group of 74 ambassadors at the moment. We must note that we have not yet actively promoted these programs to our personal circles as we first aim to launch the product.
Relevant domain experience
-
We will make use of opensource community understanding our team has to promote opensource projects to use our public and hackathon tasks.
-
Our team has many years of experience in technology and telecommunications market and we will use our connections to run pilots with several recruiting companies.
Project metrics KPI monitoring
Currently we are in active development stage, and community core building stage. When the development will be completed we will start the active marketing stage.
We will implement automatic KPIs to track project success on our dashboard.
This dashboard will show extensive statistical information under different views with grouping, displayed as totals, by periods and in a match with our targets, such as:
-
Connected contracts dashboard, each of the sections below will have Connected contracts usage data, showing interactions between chains and value transferred.
-
user analytics: Customers, Performers, Auditors, their activity and value transacted.
-
task analytics: counts and value transacted by task type(private, public, hackathon), used tags, NFTs, user.
-
TVL in active Task contracts, deposited and withdrawn value.
-
NFTs minted, total value, floor price. Utility NFTs collections(for example user profile NFTs, tags NFTs, sprint and project NFTs, Auditor and Governor NFTs) will have their details pages showing exhaustive information about the collection usage and user adoption.
-
Witnet integration analytics, will show interactions with external APIs(such as Github repository API) via Witnet Oracle.
Moonbeam and Connected Contracts
Dodao will be deployed on Moonbeam mainnet as a primary chain, although by empowering the connected contracts it is going to be really omnichain.
We plan to start with supporting few major L1(Moonbeam, Ethereum, BSC, Fantom, Polygon) and L2(Boba, Optimism, Arbitrum, ZKSync, Scroll) supported by selected primary connected contracts protocol and then expand into all EVM chains supported by connected contracts protocols(Axelar/Hyperlane/LayerZero/Wormhole).
Technically it will work like this: when a customer creates a task on Moonbeam(or any other chain), developers connected to other chains also see this task and have an option to participate in the task while staying on their chain via the connected contracts protocol. Earned tokens(fungible and NFT) could be then withdrawn to the chain of user preference.
Integration with ecosystem and already existing solutions
We have partnered with Witnet to integrate Dodao with Github API and are going to Witnet Oracle capabilities to integrate with major task management solutions like Jira and etc.
Dodao current development status and milestones archived since application for a Moonbeam Foundation Grant (Dec 2022)
Last year we have applied for a Moonbeam Foundation grant, and have received feedback to continue building and integrate with other ecosystem projects for the Foundation to consider us.
We did not apply for other ecosystems grants so far, as said we are initially a Moonbeam project, but as a part of our development and marketing activity we have participated in the last Fantom hackathon.
We have received a suggestion from some Community members to also consider applying for Community Committee Grants again and we will definitely follow the final opinion of the community and the grants committee.
We would like to highlight the attention to our belief that Dodao successful launch crucially depends on the Moonbeam community admission, with its allocation of the Community Grant funds and the fact that such grant was awarded our project would receive a significant launch boost.
As you can see in our Timeline and Milestones for Use of Grant
, some of the milestones are already started, I will give you all technical details on what was actually completed and the ongoing development.
Definitions
We are using word implementation when something is done to a certain state.
We are using phrase started implementation when some development has been started, but not completed
We are using phrase refactoring when a there was a previous implementation and it was significantly changed
If something is not mentioned it means that the development has not been started.
Smart contract:
-
EIP-2535 Diamond smart contract architecture which simplifies smart contract upgradability and maintenance by using contract facets and contract libraries approach.
-
The implemented architecture strong point that while remaining upgradable it enforces immutability of created Task contracts, meaning that Task smart contract code cannot be changed by anyone after task creation, and the Task data can be only modified by the users involved in the Task upon their assigned privileges
-
hardhat tasks and deployment scripts implementation, dodao Task related business flow unit tests and end-to end test, improving smart contract tests coverage, preparation for automatic smart contract verification at contract deployment
-
principal implementation of ERC-1155 support for Diamond contract, ERC-1155 unit test port to hardhat
-
implementation of tags support in smart contract
-
implementation of Task contracts data accessor contract(TaskDataFacet), which enables batch Task load for faster startup and Task allowlists
-
implementation of Task token balance collection function, which is a part of future multi-token Task contract functionality
-
implementation of Task contracts data callbacks to the main diamond contract which enables optimized user wallet address storage for faster Task data load and accounts allowlists and future implementation of statistical dashboard
-
Task contract refactoring to enable receiving original “msg.sender” via Connected contracts implementations(Axelar/Hyperlane/LayerZero/Wormhole)
-
started implementation of Connected contracts functionality and tested smart contract deployment to other chains
Diamond HLD diagram
Here is how current dodao smart contract diamond architecture looks like.
- Diamond storage contains Tasks, Accounts lists, Token, Connected contracts configuration and aggregated data
- Task contract storage contains the Task data
definitions
The current readiness status for the mainnet launch is mentioned in the [braces].
-
[ready] - means generally ready, only minor changes may be required for the mainnet launch
-
[mvp] - means provides basic functionality, needs more development and testing for the mainnet launch
-
[dev] - under development, has some functionality, but is not ready for testing
-
[mock] - mocked-up contract, development has not yet started
Task and user account facets:
TaskCreateFacet.sol [ready] - creates non-upgradable Task contracts using factory pattern, which are not linked to the Diamond directly, use their own storage and use CALLs to push necessary data back to the main diamond.
TaskDataFacet.sol [ready] - contains functions which read Tasks data from the Task contracts created by TaskCreateFacet, it also manages Task contracts blacklist.
LibTasks.sol [ready] and LibTasksAudit.sol [ready] - provide underlying functions for the above facets.
LibChat.sol [ready] - provides in-Task chat functions.
AccountsFacet.sol [mvp] - manages user accounts, it is being called by Task contracts when a user participates or completes the Task, it also manages Accounts blacklist.
LibUtils.sol [dev] - provide some generic functions to be reused by multiple facets.
Token facets:
TokenFacet.sol [mvp] - creates ERC-1155 compatible fungible and non-fungible(NFT) tokens, its implementation is based on Enjin reference implementation rewritten to use Diamond storage and some project-specific functions and features added. Is generally ready for implementation of complex user stories based on the already developed token functionality.
LibTokens.sol [ready] - provides ERC-1155 functions for the TokenFacet facet.
TokenDataFacet.sol [mvp] - contains more project specific ERC-1155 related functions.
LibTokenData.sol [mvp] - provides underlying functions for the TokenDataFacet facet.
Connected contracts facets:
InterchainFacet.sol [mock] - implements Moonbeam Connected contracts Axelar/Hyperlane/LayerZero/Wormhole protocol specific functions
LibInterchain.sol [dev] - provides underlying functions for the Interchain facet.
TasksInterchainFacet.sol [dev] - implements Moonbeam Connected contracts concept by enabling interaction with the Task contracts via Axelar/Hyperlane/LayerZero and Wormhole Connected contracts protocols.
AxelarFacet.sol [dev] - implements Axelar specific functions for Connected contracts calls
HyperlaneFacet.sol [dev] - implements Hyperlane specific functions for Connected contracts calls.
LayerzeroFacet.sol [dev] - implements LayerZero specific functions for Connected contracts calls
WormholeFacet.sol [dev] - implements Wormhole specific functions for Connected contracts calls
Witnet oracle facets:
WitnetFacet.sol [dev] - implements the connection with Witnet oracles to query Github repository data used to automatically sign Task review.
LibWitnetRequest.sol [dev] - provides underlying functions for the WitnetFacet facet.
APP:
-
refactor of data loading to make use of data accessor contract by loading Task data in batches
-
creation of Task contract events monitoring system which enables instant Task refresh on contract updates
-
started implementation of data analysis functions for the future dashboard
-
refactoring in order to support refactored Task contract and preparation for Connected contracts implementation
-
refactoring wallet connection functions in order to provide better user experience
-
implementation of Metamask connection for the Web version
-
refactoring of Wallet Connect functions for WalletConnect 1.0, keeping close with WalletConnect community for future migration to WalletConnect 2.0
-
fixing bugs in WebThree dart library in order to support tuples in the smart contract interface dart code generator necessary for implementing the Connected contracts
-
started implementation of Connected contracts functionality
-
started implementation of user roles based on NFTs
-
started implementation of NFT tags functionality
-
successfully tested dApp builds for Web, Android and Linux
UI:
-
new UI design prototype, started implementation of the new design in code
-
decided on the future lottie usage for in-app animations and performed first tests in order for team designer to start working on it
-
task dialog widget to Task page refactor
-
implementation of material design principles for the UI, such as FAB, widget animation, swipes
-
implementation of telegram-like search widget and tags search
-
refactor of in-app navigation which enables task hyperlinks for future public and hackathon tasks, refactor of most widgets in order to support widget animation
-
started implementation of skeletons for data load providing a better user experience
-
implementation of detailed Task Participant list for future connection with smart contract
-
implementation of Task details page and Task chat
-
implementation of Auditor page
-
started implementation of Accounts page which will provide accounts overview and details
-
implementation of tags manager widget for future integration with the smart contract and NFT tags
-
started implementation of NFT manager widget for future integration with the smart contract for creating, minting and displaying available NFTs
-
implementation of adding a Github repository to the Task and checking the repository pull requests via Witnet Oracle
Team Experience -
Tolga A., CEO. Has over 20 years in IT industry providing professional services.
Rod K., CIO. Has leading developer roles at technological companies over last 20 years.
Matt M., CTO. An experienced frontend and blockchain engineer, beeing a tech enthusiast from his roots.
Julia K., CMO. Long year experience in project and marketing management at leading German companies.
Alex P., CSO. Bringing attitude of personalized customer relations from real world offshore renewables industry to blockchain.
Diana L., UI/UX Designer. Dedicated to inspire the comminity with her blazing design.
Timeline and Milestones for Use of Grant -
Pre-launch development
-
ERC-1155 implementation, NFT tokens for user roles(Auditor, DAO governor), NFT tags for tasks. 8 weeks. Started, completion on 05.2023
-
Public and hackathon tasks implementation, tasks now have hyperlinks to be followed from external web pages. 12 weeks. Starting on 05.2023, completion on 07.2023
-
Tags implementation for task groupping. 4 weeks. Started, completion on 04.2023
-
Task search is capable to find by contract creator, tags, task text, title, date. 4 weeks. Started, completion on 04.2023
-
Tasks page has search and filtering options, by default it shows only one task from one customer. 4 weeks. Started, completion on 04.2023
-
Markdown support in task creation and display. 4 weeks. Starting on 04.2023, completion on 05.2023
-
Task acceptance based on Github pull request merge (via Witnet). 8 weeks. Started, completion on 04.2023
-
Dashboard with project stats, dashboard views for customer, perfomer and auditor. 8 weeks. Starting on 05.2023, completion on 07.2023
-
Process flow documentation, guidelines and best practices for Customer, Performer and Auditor, smart contract protocol documentation in order to allow external usage. 8 weeks. Started, completion on 06.2023
-
UX/UI redesign. 8 weeks. Started, completion on 05.2023
-
Smart contact security audit. 14 weeks. Starting on 06.2023, completion on 07.2023
-
Application publish to Play market and App Store. 1 week. Starting on 07.2023, completion on 07.2023
-
Connected contracts development and deployment to Axelar/LayerZero/Wormhole/Hyperlane supported chains, transparent multichain support (where main chain is Moonbeam, possible to interact from any chain supported by Axelar/LayerZero/Wormhole/Hyperlane). * a user vote will be performed to select the primarty message passing protocol to base on. 8 weeks. Started, completion on 06.2023
-
Deploy to the Moonbeam mainnet. 1 week. Starting on 07.2023, completion on 07.2023
After-launch development
-
migrate to WalletConnect 2. Starting on 07.2023, completion on 08.2023.
-
add i18n to the dApp, begin community translations program. Starting on 07.2023, completion on 09.2023.
-
further dashboard development to implement project metrics KPI monitoring. Starting on 07.2023, completion on 09.2023.
-
implementation of social features based on NFTs and chat feature. Starting on 07.2023, completion on 09.2023.
-
Implement features and changes based on real-usage feedback. Starting on 07.2023, completion on 09.2023.
Timing totals:
Total development working weeks: 78.
Already completed working weeks: 39.
Remaining working weeks: 39.
Total project developers: 2.
Total audit working weeks: 14.
Total external auditors: 2.
*working weeks should be divided by developer count in order to determine actual timing.
Running the math on the grant ask:
We have calculated the 675K GLMR grant ask based on the price of $0.37 per GLMR on March 13th which totaled $250K, the minimum possible grant amount for the Community vote.
If the community finds it possible, to fund and support Dodao launch in the Moonbeam ecosystem, we would greatly appreciate funding of both audit and development, as we are currently developing full-time from our own funds, and this funding would give us a sort of financial airbag to be able to continue development even after the milestones completion and mainnet launch.
We are planning to go forward with Hacken for our first audit because their price is quite reasonable and they are respectful enough.
With $107K expected to be spent for the audit(based on a quote from hacken), $143K is remaining for the development.
We have two developers, so it is $71.5K funding available for each.
39 development weeks is 19.5 weeks per developer, with a developer working 6 days per week we have 117 working days per developer.
We divide $71.5K funding to 117 working days, which gives us a $507 daily rate, which when working 10 hours per day gives a $50 USD per hour.
These calculations do not include our direct spending on external services like: graphics design, UX/UI design, video creation, community building and other relevant expenses.
Our grant ask was based on a $550 developer daily rate. Given the raise of the market and GLMR price, to balance the grant ask we have increased our final milestone to 2 months beyond the mainnet launch as we are planning to develop additional features such as WalletConnect 2 for example which we have also included in the Grant Proposal to be accountable to the community for its delivery. All the extra $ amount fixed from the sale of GLMR will be used to continue the development.
Vision Of Success -
Upon the completion of the grant we plan to launch Dodao to Moonbeam and several selected mainnets supported by Connected contracts protocols, in an optimistic scenario we plan to reach the first target of 500 customers who have created first 500 Tasks in the first 2 months after the mainnet launch and we would aim to double this amount every 2 months thereafter, making 32000 total customers after 12 months.
We have a vision for Dodao to be used as an ecosystem backbone for task settlement, teams receiving future grants use dodao to make their grant usage transparent and receive additional funding(see gitcoin.io user story), Moonbeam hackathons are run on dodao setting all related activity onchain, ecosystem projects are funded using public tasks with automated settlement on github pull request merge(via Witnet). Dodao key success metrics are performer count(developers and artists), customer count, average task cost and minted NFTs count.
We have a dream to become a major task settlement marketplace/protocol and reach a total number of 100k developers and 500k customers, settling 500k tasks per month over 5 years.
Development plan without funding incentives available
Strategically we aim to complete all milestones mentioned in the proposal, as you can see most of it has already started, but the timing may change. Particularly it may be difficult to complete the implementation of Connected contracts at the mentioned schedule.
We currently have no external investors and are contributing our own time to the development, so we will not be able to fund code audit for planned mainnet launch without finding some support.
Rationale -
i) Exising ecosystem user activity(hackathons, public and private tasks) will be moved onchain, enabling transaction, TVL and blockchain user growth.
ii) Dodao is built with the use of Axelar/LayerZero/Wormhole/Hyperlane message passing protocol, enabling cross and omnichain usage.
- Steps to Implement -
-
We are applying for a GLMR 675K grant which will be used for the development by funding 2 full-time developers and smart contract audit(audit quote from a major external auditor is available).
-
Marketing support from Moonbeam foundation and community and Dodao involvement in the ecosystem activities will be the key to project success.
Thank you for reading!