[GENERAL] Name and surname of main applicant
Santiago Carmuega
[GENERAL] Are you delivering this project as an individual or as an entity (whether formally incorporated or not)
Entity (Incorporated)
[GENERAL] Please specify how many months you expect your project to last (from 2-12 months)
6
[GENERAL] Please indicate if your proposal has been auto-translated into English from another language
No
[GENERAL] Summarize your solution to the problem (200-character limit including spaces)
We'll build a reference implementation of a Substrate partnerchain that can be use by developers in the ecosystem as blueprint / example to build their own specific chains.
[GENERAL] Does your project have any dependencies on other organizations, technical or otherwise?
No
[GENERAL] If YES, please describe what the dependency is and why you believe it is essential for your project’s delivery. If NO, please write “No dependencies.”
No dependencies.
[GENERAL] Will your project’s output/s be fully open source?
Yes
[GENERAL] Please provide here more information on the open source status of your project outputs
All source-code developed for the proposal will be licensed under Apache 2.0.
[METADATA] Horizons
Interoperability
[SOLUTION] Please describe your proposed solution
Building a partnerchain is the equivalent of building a new blockchain. One could even argue that the technical challenges are even more complex since it requires the integration with the Cardano protocol. The available resources and SDKs provided by IOG go a long way simplifying this development process, but the process still requires a huge effort.
Our solution to this problem involves building a fully functional partnerchain within the context of a particular use-case that development teams can use as a baseline or reference for their own implementations.
Our reference partnerchain will provide the following benefits for developers:
- An example of how to leverage IOGs SDK
- An example of how to implement a use-case specific Substrate chain
- An example of how to exchange assets between Cardano - Partnerchain
Given the diversity of use-cases, deciding which one to use for the reference implementation is not an easy choice. The short list of possibilities is:
- DePin chain
- DAO chain
- Game chain
- Decentralized Identity Chain (DID)
- DeFi chain
Oracle chain (excluded since there are other projects already working on this)Privacy chain (excluded since we already have Midnight)
To make this choice, we'll execute a community survey at the beginning of the development process asking for their preference. The result of the survey will define the use-case we'll use for the reference implementation. Since the scope / effort defers between each option, the amount of features to develop in each case will accommodate to the available budget / time.
[IMPACT] Please define the positive impact your project will have on the wider Cardano community
The potential benefits of a rich partnerchain ecosystem on top of Cardano have been well extensively discussed and can be summarized as:
- allowing new use-cases that require a different set of trade-offs at the protocol level (consensus, finality, etc) by extending Cardano capabilities instead of forcing projects to opt for other chains.
- leveraging the extensive and robust community of SPOs to serve as providers for new chains. This provides a new revenue stream for SPOs, effectively making the Cardano network more secure.
All of the above benefits won't live to its potential if the development effort is to high for any project to implement a partnerchain. A reference implementation of a partnerchain will improve our chances of building a rich and active partnerchain ecosystem.
[CAPABILITY & FEASIBILITY] What is your capability to deliver your project with high levels of trust and accountability? How do you intend to validate if your approach is feasible?
TxPipe is an active member of the Cardano ecosystem
TxPipe has been developing open-source tools for the Cardano ecosystem for over 3 years and we're not going anywhere. Evidence of our commitment can be found by evaluating the continuous activity of our public code repositories.
Experience developing in the Cardano ecosystem
TxPipe has helped developed several dApps for the Cardano ecosystem. This experience allows us to evaluate the feasibility of the project and its potential benefit from a developer's perspective. We've also participated in development of chains using the released version of the IOG's Partnerchain SDK.
Successful Catalyst proposals
We have successfully completed several Catalyst proposals. This may serve as evidence that our team has the required capabilities to fulfill these type of projects.
Development process will be public and open-source
Both the output and the development process will be public and open-source. This approach provides an easy way for the Catalyst team and the Cardano community to evaluate the progress at each step of the process.
[PROJECT MILESTONES] What are the key milestones you need to achieve in order to complete your project successfully?
Project scaffolding
Milestone outputs:
- The selection by the community of the use-case to implement
- A stub of the Substrate node using existing templates
Acceptance criteria:
- All components stubs are ready for feature development
- A CI/CD pipeline is in place to build / integrate the different artifacts
Evidence of milestone completion:
- Publicly available source-code containing the project scaffold
Generic Substrate Chain
Milestone outputs:
- A generic Substrate-based node for a new chain
- Instructions on how to develop on on top of the basic node
Acceptance criteria:
- A developer is able to clone and compile the Substrate node
- A developer is able to run a local instance of the Substrate node
- A developer is able to use the existing node to build feature on top
Evidence of milestone completion:
- Publicly available source-code of the generic Substrate node
- Link to documentation site with development instructions (URL TBD)
- Video showing how to start developing on top of the Substrate node
Cardano Integration
Milestone outputs:
- A Substrate-based node that integrates the Partnerchain SDK
- An instance of the partnerchain governance contracts on Cardano
- Tutorial on how to run the node as part of the existing partnerchain
Acceptance criteria:
- A developer is able to clone and compile the updated Substrate node
- A developer is able to run the node as a member of the partnerchain
Evidence of milestone completion:
- Publicly available source-code of the updated Substrate node
- Link to documentation site with development instructions (URL TBD)
- Video showing how to setup the node to participate in the partnerchain
Use-case Specific Features
Milestone outputs:
- A Substrate-based node that implements features of the selected use-case
- Tutorial describing the process of adding custom features to a Substrate node
Acceptance criteria:
- A developer is able to clone and compile the updated Substrate node
- A developer is able to run the node as a member of the partnerchain
Evidence of milestone completion:
- Publicly available source-code of the updated Substrate node
- Link to documentation site with development instructions (URL TBD)
- Video showing the new features and how to access them in the codebase
Development Tutorial
Milestone outputs:
- A step-by-step tutorial of how the final Partnerchain node was developed
- A binary release of the complete Substrate node to use as example
Acceptance criteria:
- A developer can follow the tutorial to replicate the Substrate node development
- A developer is able to install and run the binary release of the Substrate node
Evidence of milestone completion:
- Link to documentation site containing the tutorial (URL TBD)
- Link to binary release for the complete Substrate node (URL TBD)
- Video describing the available content and artifacts
Final Report
Milestone outputs:
- publicly available source-code of the complete system
- publicly available documentation site with tutorial & support artifacts
- a video showcasing the final output of the project
- a final report describing the project process and outcome
Acceptance criteria:
- the tutorial facilitates the task of building new parternchain
- the final video complies with Catalyst requirements
- the final report complies with Catalyst requirements
Evidence of milestone completion:
- Source-code available in the Github repository
- Public documentation site (URL TBD)
- Final video uploaded to Google drive
- Final report uploaded to Google drive
[RESOURCES] Who is in the project team and what are their roles?
TxPipe members involved in this project will be:
[BUDGET & COSTS] Please provide a cost breakdown of the proposed work and resources
FTE = Full-time equivalent
Software development:
- Rust developer: 1 FTE x 5.5 months = ₳ 141,429
- Technical Writer: 1/2 FTE x 2 months = ₳ 8,571
Infrastructure:
- Site-reliability Engineer: 1/2 FTE x 3 months = ₳ 34,286
Project Management:
- Project Manager: 1/4 FTE x 6 months = ₳ 12,857
[VALUE FOR MONEY] How does the cost of the project represent value for money for the Cardano ecosystem?
The bulk of the budget falls under the software development category. TxPipe has extensive experience in the field, allowing it to provide good value for money. The hourly rates are defined using fair market prices. The estimation for the level of effort takes into account all of the optimizations that our team is capable of providing after years of experience developing software solutions in the Cardano ecosystem.