over budget
PROTOFIRE - Cardano Cross-Chain Interoperability Protocol Integration
Current Project Status
Unfunded
Amount
Received
₳0
Amount
Requested
₳185,570
Percentage
Received
0.00%
Solution

The solution is to develop an on-chain & off-chain stack to integrate Cardano Smart Contracts & addresses with CCIP technology allowing them to talk to other networks.

Problem

PROTOFIRE - Cardano Cross-Chain Interoperability Protocol Integration

Cardano is currently an isolated network. Interaction (move data & tokens) & interoperability with EVM-compatible networks is a must for bringing more adoption.

Impact Alignment
Feasibility
Value for money

Team

2 members

PROTOFIRE - Cardano Cross-Chain Interoperability Protocol Integration

Please describe your proposed solution

State of the Problem

Blockchains are closed systems by design. Security reasons back that decision. But users don’t care, they want to have a seamless experience abstracting Blockchain compatibility issues and technical restrictions. This lack of interoperability results in slower innovation and is holding back the progress and mass adoption of Web3.

Blockchain interoperability protocols are important for the Web3 ecosystem and traditional systems that need to interact with different blockchains. These protocols are the foundation for building blockchain abstraction layers, allowing traditional backends and dApps to interact with any blockchain network through a single middleware solution. Without a blockchain interoperability protocol, Web2 systems and dApps would need to build separate in-house implementations for each cross-chain interaction that they want to use, which is a time-consuming, resource-intensive, and complex process.

Blockchain interoperability protocols provide the following capabilities:

You can transfer assets and information across multiple blockchains.

Application developers can leverage the strengths and benefits of different chains.

Collaboration between developers from diverse blockchain ecosystems enables the building of cross-chain applications to serve more users and provide additional features or products for them.

What is CCIP?

CCIP provides a single interface through which dApps and web3 entrepreneurs can securely meet all their cross-chain needs. You can use CCIP to transfer data, tokens, or both data and tokens across chains.

CCIP supports three main capabilities:

  • Arbitrary Messaging is the ability to send arbitrary data (encoded as bytes) to a receiving smart contract on a different blockchain. The developer is free to encode any data they wish to send. Typically, developers use arbitrary messaging to trigger an informed action on the receiving smart contract, such as rebalancing an index, minting a specific NFT, or calling an arbitrary function with the sent data as custom parameters. Developers can encode multiple instructions in a single message, enabling them to orchestrate complex, multi-step, multi-chain tasks.
  • Token Transfer: You can transfer tokens to a smart contract or directly to an EOA (Externally Owned Account) on a different blockchain.
  • Programmable Token Transfer is the ability to simultaneously transfer tokens and arbitrary data (encoded as bytes) within a single transaction. This mechanism allows users to transfer tokens and send instructions on what to do with those tokens. For example, a user could transfer tokens to a lending protocol with instructions to leverage those tokens as collateral for a loan, borrowing another asset to be sent back to the user.

Some of these use cases are DeFi composability (e.i: Cross-Chain Liquidation Protection), Cross-Chain name services, Cross-Chain NFTs minting, Gaming, and any other circumstances where users from one chain want to act on another chain.

Solution

We propose a hybrid on-chain/off-chain solution to enable cross-chain messaging on the Cardano network. This solution aims to facilitate seamless communication between Cardano and other blockchain networks, allowing for efficient token transfers and other cross-chain operations.

Solution Architecture Overview

On-Chain Components

a. Master Incoming Contract: Receives messages destined for the Cardano network.

b. Master Outgoing Contract: Sends messages to other networks.

c. Project Configuration Contract: Stores project-specific configurations as UTXOs, each identified by a unique NFT token.

These contracts serve as storage centers for messages and project configurations, allowing the off-chain module to detect changes and perform corresponding actions.

Off-Chain Components

a. Message Processing Module: Handles message processing and creates corresponding transactions for both incoming and outgoing messages based on the project configurations stored in the Project Configuration Contract.

b. Project Configuration Info: Each project or use case will have a unique UTXO with configuration info that defines the logic for creating specific transactions based on the received messages.

Messaging Flow

Outgoing Messages from Cardano:

  1. Users create a transaction that generates a new UTXO in the Master Outgoing Contract, specifying the source address using the unique NFT token of the target project.
  2. The Message Processing Module detects the change, retrieves the corresponding project configuration from the Project Configuration Contract, and processes the message accordingly.
  3. If required, the module creates a transaction on the Cardano network before sending the message to the destination network (e.g., burning tokens for a Burn and Mint scenario).

Incoming Messages to Cardano:

  1. Messages from other networks are sent using the channels provided by existing cross-chain protocols, creating an entry in the Master Incoming Contract, specifying the destination address using the unique NFT token of the source project.
  2. The Message Processing Module detects the change, retrieves the corresponding project configuration from the Project Configuration Contract, and processes the message accordingly.
  3. The module creates a transaction on the Cardano network based on the message (e.g., minting tokens for a Burn and Mint scenario).

Off-Chain Infrastructure

The Message Processing Module will be part of the off-chain infrastructure maintained by the existing cross-chain protocols. This infrastructure is typically supported by a network of nodes and validators, ensuring a decentralized solution if the module's logic is integrated into these nodes.

Transaction Creation Complexities:

  • UTXO System: Cardano's deterministic and specific UTXO system requires careful handling when creating transactions. The off-chain module will construct specific transactions based on the project configuration values and the message being processed.
  • If the transaction needs to consume UTXOs from a Cardano wallet, the private key must be encrypted using an internal system public key and attached to the message. The off-chain module will decrypt the private key using the corresponding internal private key and use it to sign the created transaction.
  • If the transaction needs to consume UTXOs from a contract with restricted access to a specific wallet, an extra signature will be attached to the message. Users will sign the message before creating it and attach the signature to the message, then sign the transaction itself that stores the message in either the Master Outgoing or Master Incoming Contract.
  • Message signing can be performed using Cardano wallets or any EVM wallet (e.g., Metamask). The smart contract from which funds are to be consumed must have the public key (EVM or Cardano address) of the wallet stored in the UTXO to be consumed, allowing for verification and consumption.

Message Structure

Messages will contain the following fields:

  • Date
  • Source Network
  • Source Address
  • Destination Network
  • Destination Address
  • Message: Any encoded information
  • Signatures: Attached signatures for the entire message block
  • Processed Flag: Indicates whether the message has been processed by the off-chain module

Project Configuration

Each project or use case will have an entry UTXO in the Project Configuration Contract, identified by a unique NFT token. The datum of this UTXO will contain all the necessary fields for configuring the project. The smart contract will ensure that only authorized wallets can update the datum.

When constructing messages with source or destination addresses, the unique policy and token name minted for each project will be used to identify them. The off-chain module will retrieve the project configuration (datum) from the Project Configuration Contract when needed to process messages, using the NFT as an identifier matching against the source or destination address.

The Project Configuration datum will include:

  • Scripts: List of UTXOs with scripts to be referenced when building transactions.
  • Redeemers: List of redeemers with their fields and default values or values to be generated using variables. Each redeemer will have a unique name or type for identification.
  • Datums: List of datums with their fields and default values or values to be generated using variables. Each datum will have a unique name or type for identification.
  • Transactions: List of possible transactions with their configuration and logic

Transaction Configuration

For each transaction, the following should be specified:

  • Flag indicating if it should be used for outgoing, incoming, or both
  • Query to Activate: Query applied by the off-chain module to determine if the logic should be applied to the message
  • Scripts: Script hashes to be used in the transaction. They will be attached to the transactions or read from the UTXO where they are stored. It will search for the script hash in the JSON configuration file.
  • Inputs: List of inputs to be added to the transaction, either specific UTXOs or using the intelligent selector to find UTXOs in a particular address. For each input to be consumed from a smart contract, a redeemer must be specified, including its type, which will be searched for in the list of redeemers in the configuration file. The complete redeemer will be constructed based on the declaration, using default values, variable-filled values, or specific values set for fields at this point.
  • Reference Inputs: List of reference inputs to be added to the transaction, either specific UTXOs or using the intelligent selector to find UTXOs in a particular address.
  • Minting/Burning: Specification of tokens to be minted or burned, including the token, amount, and a redeemer.
  • Outputs: List of outputs to be added to the transaction, including destination address, tokens, and possible datum (new or updated). To create the datum, the type must be specified and searched for in the list of datum declarations. If it is an UPDATE operation, the datum to be updated must be specified by selecting the index of the input from which the datum should be read. Specific fields can be updated using a formula, such as {amount: input.amount + message.amount}.

Intelligent UTXO Selector

The intelligent UTXO selector can be configured to:

  • Select one or more UTXOs that possesses a specific NFT
  • Select one or more UTXOs that possesses more than a certain amount of FT tokens
  • Select one or more UTXOs that possesses a specific datum or a type of datum
  • Select one or more UTXOs that possesses a specific value or condition in a field of its datum
  • Select one or more UTXOs that possesses a reference script with a specific hash
  • Select one or more UTXOs to satisfy a specific aggregated condition (e.g., total amount of tokens between them)

Redeemers and Datums

Redeemers and datums have declarations in the UTXO in the Project Configuration Contract. In the redeemer and datum declarations, fields, default values, variable-filling values, and a type for identification are specified.

In each transaction, for every minting or consuming operation, a redeemer is required. The type of the redeemer is set, and it will be created based on the template. Specific values for different fields can also be set at these points.

Similarly, for datums in outputs, the type is set, and specific fields with values are defined. If the datum is an update, the index of the input from which the datum will be read must be specified, and the updated datum will be populated accordingly. It is also possible to set a datum field with a transformation formula, such as {amount: input.amount + message.amount}.

Cost Efficiency

The transaction fees incurred by the off-chain module can be handled in two ways:

  1. For outgoing transactions, users can pay additional ADA when creating the message transaction in the master contract to cover the fees. If not all the ADA is used, a mechanism should be in place for users to collect the remaining balance.
  2. For incoming or outgoing transactions, the master contract or a separate smart contract can lock ADA to pay for the transactions. Different possibilities include each project having an entry in the contract, each user having an entry, or the cross-chain protocol itself providing ADA. The specific approach can be determined based on the requirements and preferences of the projects and users involved.

Reliability and Fault Tolerance

To ensure reliability and fault tolerance, the following mechanisms can be implemented:

  1. Retry Mechanism: If a transaction fails due to network issues or other transient errors, the off-chain module can retry the transaction after a certain interval to ensure that temporary failures don't result in lost messages.
  2. Transaction Log: Maintain a log of all transactions processed by the off-chain module, including their status (success, failure, pending), for auditing, debugging, and recovery purposes.
  3. Rollback Mechanism: In case of critical failures or inconsistencies, implement a mechanism to roll back the state of the master contracts and the off-chain module to a previously known stable state, preventing data corruption and ensuring the integrity of the cross-chain messaging system.
  4. Monitoring and Alerts: Implement monitoring and alerting systems to detect and notify administrators of any errors, failures, or anomalies in the message processing flow, enabling prompt action to investigate and resolve issues.

Governance and Updates

The integration and update of off-chain modules and components are the responsibility of the cross-chain protocol adopting this solution. They should incorporate the off-chain module into their existing decentralized infrastructure of nodes and validators. The cross-chain protocol should provide a secure mechanism for projects to add, edit, or delete their Project Configuration Contract.

User Experience

To enhance the user experience, the solution includes a flag in the outgoing or incoming messages to indicate whether they have been processed by the off-chain module. Leveraging the existing tracking systems of the cross-chain protocols allows users to monitor the progress of messages across different networks.

Conclusion

This hybrid on-chain/off-chain solution enables seamless cross-chain messaging on the Cardano network. With the help of the master contracts for message storage and an off-chain message processing module, the solution facilitates efficient token transfers and other cross-chain operations.

The Project configuration contract allows for customizable transaction creation based on specific project requirements, including the declaration and usage of redeemers and datums. The intelligent UTXO selector and transaction signing mechanisms ensure secure and flexible handling of transactions.

Incorporating cost efficiency measures, reliability, fault tolerance mechanisms, governance and update procedures, and user experience enhancements provides a robust and efficient means for integrating Cardano into cross-chain protocols.

It opens up new possibilities for cross-chain applications and use cases, enhancing Cardano's interoperability with other blockchain networks.

Please define the positive impact your project will have on the wider Cardano community

More users, Dapps, and capital

Web3 is now a multi-chain landscape. There are hundreds of blockchains, layer-2 networks, sidechains, subnets, appchains, parachains, and other environments for developers and users to choose from. While the launch of new on-chain ecosystems has driven innovation and adoption, it has also fragmented applications, on-chain assets, and market liquidity across different, disconnected blockchains.

In such an environment integration of Cardano with CCIP will allow other communities to get much easier access to Cardano, for example, if a big player considers coming into Cardano it will make it easier if Cardano is connected to EVM-compatible networks. One example is Circle deploying USDC on Cardano, if they could rely on CCIP for burning & minting (or locking & unlocking) USDC that integration would be much easier & more flexible.

Aside from the obvious difference, Cardano being connected to EVM-compatible networks is like Bitcoin and his spot ETF, this enabling infrastructure allows capital to flow from traditional financial systems (EVM-compatible networks) to Bitcoin (Cardano).

Moreover, new use cases that require, or want, to be multi-chain can onboard the Cardano ecosystem, like gaming, specific DeFi applications (borrowing in one network and collateralizing in another), cross-chain NFT collections, and so on.

More users, Dapps, and capital will flow to Cardano if this project is approved!

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?

Our capability to deliver the project with high levels of trust and accountability stems from the experience, expertise, and organizational processes we have in place. Here's why we are well-suited to execute this project:

  1. Protofire's Track Record: Protofire, which is spearheading this project, has an established reputation for building decentralized infrastructure, protocols, applications, and developer platforms. Its specialized skills in enhancing developer adoption and network usage are crucial for the success of this project.
  2. Skilled Team: Our team is composed of professionals with diverse backgrounds, including blockchain development, smart contracts, security, data analytics, and project management. This ensures a multidisciplinary approach to problem-solving and guarantees the employment of best practices in execution.
  3. Cardano Development experience: we have a team that has worked for more than 2 years in Cardano smart-contract development.
  4. We have successfully delivered two Catalyst-funded proposals: Dev Studio (completed) and SmartUTXO (80% complete). These projects demonstrate our ability to execute Cardano development tools effectively.
  5. Dev Studio
  6. SmartUTXO
  7. ChainLink partnership: ChainLink is a long-term partner of Protofire. We have worked together for many years.
  8. Previous Contributions: Protofire has a history of making meaningful contributions to the blockchain community. This indicates not only technical capabilities but also a commitment to the advancement of decentralized technologies.
  9. Transparent Communication: We will maintain open lines of communication with the community through regular updates and engaging in forums. This transparency is essential for building trust.
  10. Robust Financial Management: We will implement strict financial controls and regular auditing to ensure that funds are used efficiently and for the intended purpose. This includes having a clear budget allocation, milestones-based disbursements, and financial reporting.
  11. Scalable Solutions: Protofire’s experience ensures that the solutions we develop are scalable and able to adapt to the evolving needs of the Cardano ecosystem. This speaks to our capability to deliver not just a project, but a sustainable and evolving solution.
  12. Feedback and Iterative Development: We will incorporate feedback from the community and users, and employ an iterative development process. This ensures that the project adapts and improves based on real-world input and requirements.

Our accumulated experience, transparency, and commitment to best practices and community engagement make us not only capable but trustworthy stewards of this project.

What are the key milestones you need to achieve in order to complete your project successfully?

Milestone 1: Milestones: Milestone 1: Architecture Design and Specification

Duration: 4 weeks

Key actions:

  • Design the overall architecture of the hybrid on-chain/off-chain solution
  • Specify the components and their interactions (master contracts, project configuration contract, message processing module)
  • Define the messaging flow for both outgoing and incoming messages
  • Determine the off-chain infrastructure requirements
  • Address transaction creation complexities (UTXO system, transaction signing)
  • Define the message structure and project configuration schema

Milestone Outputs:

  • Detailed architecture diagram
  • Comprehensive specification document
  • Initial project structure and documentation in the GitHub repository

Acceptance Criteria:

  • The architecture diagram clearly illustrates all components and their interactions
  • The specification document covers messaging flow, off-chain infrastructure, transaction creation, message structure, and project configuration in detail
  • The GitHub repository is set up with the initial project structure and documentation

Evidence:

  • Detailed architecture diagram illustrating components and their interactions
  • Comprehensive specification document outlining the messaging flow, off-chain infrastructure, transaction creation, message structure, and project configuration
  • GitHub repository with initial project structure and documentation

Milestone 2: Milestone 2: Smart Contract Development

Duration: 8 weeks

Key Actions

  • Develop the master incoming contract, master outgoing contract, and project configuration contract on the Cardano network
  • Implement the logic for handling message storage, retrieval, and project-specific configurations
  • Develop sample smart contracts for testing cross-chain messaging functionality
  • Write unit tests for the smart contracts to ensure correct behavior
  • Conduct thorough testing and bug fixes

Milestone Outputs:

  • Master incoming contract, master outgoing contract, and project configuration contract coded and deployed
  • Sample smart contracts coded and deployed
  • Unit tests for the smart contracts

Acceptance Criteria:

  • Smart contracts are developed according to the specifications
  • Unit tests cover all critical functionalities of the smart contracts
  • Test results demonstrate correct behavior of the smart contracts

Evidence:

  • GitHub repository with the developed smart contracts and unit tests
  • Screenshots of successful test results demonstrating the functionality of the smart contracts
  • Video showcasing the deployment and interaction with the master contracts and project configuration contract on the Cardano testnet

Milestone 3: Milestone 3: Off-Chain Module Development

Duration: 8 weeks

Key Actions

  • Develop the message processing module for handling incoming and outgoing messages
  • Implement the logic for creating transactions based on project configurations retrieved from the Project Configuration Contract
  • Integrate the intelligent UTXO selector and transaction signing mechanisms
  • Implement retry mechanisms, transaction logging, and rollback functionality for reliability and fault tolerance
  • Conduct extensive testing and bug fixes

Milestone Outputs:

  • Message processing module
  • Integration of intelligent UTXO selector and transaction signing mechanisms
  • Reliability and fault tolerance features
  • Test results

Acceptance Criteria:

  • Message processing module handles incoming and outgoing messages correctly
  • Transactions are created based on project configurations retrieved from the Project Configuration Contract
  • Intelligent UTXO selector and transaction signing mechanisms are integrated successfully
  • Retry mechanisms, transaction logging, and rollback functionality are implemented for reliability and fault tolerance
  • Extensive testing is conducted, and all critical bugs are fixed

Evidence:

  • GitHub repository with the developed off-chain module code and associated tests
  • Screenshots of the off-chain module successfully processing messages and creating transactions based on project configurations
  • Video demonstrating the end-to-end flow of cross-chain messaging using the off-chain module
  • Documentation on the reliability features and transaction handling mechanisms

Milestone 4: Milestone 4: Integration and Testing

Duration: 4 weeks

Key Actions:

  • Integrate the smart contracts and off-chain module with the existing cross-chain protocol infrastructure
  • Conduct integration testing to ensure seamless communication between Cardano and other blockchain networks
  • Collaborate with the cross-chain protocol team to incorporate the solution into their decentralized infrastructure

Milestone Outputs:

  • Integrated solution with existing cross-chain protocol infrastructure
  • Integration test results

Acceptance Criteria:

  • Smart contracts and off-chain modules are seamlessly integrated with the existing cross-chain protocol infrastructure
  • Integration tests demonstrate successful cross-chain messaging between Cardano and other networks
  • Cross-chain protocol team collaborates to incorporate the solution into their decentralized infrastructure

Evidence:

  • Integration test results demonstrating successful cross-chain messaging between Cardano and other networks
  • Video showcasing the end-to-end integration and functionality of the solution within the cross-chain protocol ecosystem

Final Milestone: Milestone 5: Documentation, Code Review, and Deployment in Testnet

Duration: 6 weeks

Key Actions:

  • Prepare comprehensive documentation for the hybrid on-chain/off-chain solution
  • Create user guides and tutorials for projects to integrate and utilize the cross-chain messaging functionality
  • Finalize the deployment process for testing and provide deployment scripts and configuration templates
  • Conduct thorough security code review and address any identified vulnerabilities
  • Fixing critical issues detected in the code review.
  • Engage with the community and gather feedback for further improvements

Milestone Outputs:

  • Comprehensive documentation
  • User guides and tutorials
  • Deployment scripts and configuration templates
  • Security code review reports
  • Community engagement metrics and feedback

Acceptance Criteria:

  • Documentation is comprehensive and covers all aspects of the solution
  • User guides and tutorials are clear and easy to follow
  • Deployment scripts and configuration templates are provided and tested
  • Security code reviews are conducted, and all identified vulnerabilities are addressed
  • Community engagement is initiated, and feedback is gathered for further improvements

Evidence:

  • GitHub repository with complete documentation, user guides, and tutorials
  • Deployment scripts and configuration templates available in the repository
  • Security code review reports and evidence of addressed vulnerabilities
  • Community engagement metrics and feedback gathered from users and projects
  • Final video showcasing the deployed solution and its impact on cross-chain interoperability

Who is in the project team and what are their roles?

Protofire Experience

Protofire stands at the forefront of the Web3 revolution, offering a comprehensive range of services to empower and catalyze the growth of decentralized technologies. With our deep-rooted expertise and vast experience, we have established ourselves as a trusted partner for clients seeking to harness the full potential of blockchain and Web3 applications. From smart contract development and decentralized app creation to developer tools, integrations, DevOps, wallets, and TVL solutions, our team of blockchain mavericks has collaborated with prominent projects and platforms, such as Gnosis Safe Wallet, Chainlink, The Graph, Filecoin, MakerDAO, Fuse, CowSwap, and many others. We are committed to bringing your visionary ideas to life, combining technical prowess with effective project management to drive the success of your Web3 endeavors

Diego Torres Project Management

<https://www.linkedin.com/in/diego-torres-borda-94b70912/>

In 2018, I stumbled upon Bitcoin's White Paper, and it was love at first sight. Since then, I've immersed myself in the world of blockchain and studied numerous other protocols, from Ethereum to third-generation blockchains. To me, a decentralized protocol is more than just a buzzword - it's a community-driven decision-making organization with open and public records, enforced by consensus protocols that ensure permissionless access and censorship resistance.

Web3 Experience

  • Protofire FCTO: Business Development. Education. Team Leadership.
  • The Graph: Indexing Operation Leadership. Subgraph development. Hosted services to third parties.
  • Polkadot Ecosystem: Contract Wizard &amp; Multisg development. Infrastructure as a service to Parachains.
  • Cardano Ecosystem: RastDAO Founder, Core team at Mayz &amp; Cardano Ambassador.

Manuel Padilla Lead Software Engineer &amp; Blockchain Specialist

<https://www.linkedin.com/in/manuel-ale-padilla/>

Manuel Padilla is a versatile and highly motivated software engineer with a Bachelor's degree in Technology from the National Technological University. Having a plethora of programming languages under their belt, including but not limited to SQL, Basic, C, C++, VB, .NET, Java, JavaScript, TypeScript, Python, and Haskell, Manuel Padilla brings over 13 years of experience in web development and software engineering.

Web3 Experience:

  • Protofire (April 2023 - Present): Currently working as a Software Engineer, focusing on blockchain technologies including Cardano, Plutus, DeFi, and DApps.
  • MAYZ Protocol (October 2022 - Present): Involved in full-stack blockchain development, specializing in Cardano, Plutus, and Haskell.
  • RATS DAO (January 2022 - Present): Serving as a Web Developer, DApp Developer, and Blockchain Developer, primarily focusing on Cardano, Plutus, and Haskell.

dApps:

GitHub: https://github.com/manupadillaph/

Camila Mancusi QA Engineer

<https://www.linkedin.com/in/camilamancusi/>

Camila wants to participate improving the user experience and usability in the web3 applications to make this world more friendly and accesible to everyone. She wants to be involved in making possible that using web3 functionalities is as simple and usual as those focused on web2

Web3 Experience:

  • Protofire: QA &amp; Project Management
  • SimpleState: Design test cases. Participate in the definition of features. Design scenarios and test cases.Report errors, propose solutions and validate the correction. Ensuring that the product is ready for the customer
  • UNICEF: Design test cases. Participate in the definition of features. Creates test executions. Reports bugs / issues. Monitor bug priorities.

Luis Lopez Full Stack Developer

<https://www.linkedin.com/in/luigibyte/>

Luis likes the entire Blockchain ecosystem, and He has created a minting Dapp for BadgerDAO. Expert knowledge in NodeJS, Web3JS, SM, Solidity. Has experience with Smart Contracts. Polkadot, Polygon, Chainlink, Lens

Web3 Experience:

  • Protofire: Full Stack Developer
  • BadgerDAO:
  • MakerDAO: Subgraph development
  • Messari: Built subgraph for harvest-finance yield-farming protocol Messari

Braian Leiva DevOps

<https://www.linkedin.com/in/braian-leiva/>

Fan of blockchain and decentralized systems. Infrastructure automation lover.

Experience:

  • 15+ years of experience using Linux (Debian, Centos, Arch Linux, Red Hat, OpenSUSE, Fedora, Ubuntu, etc).
  • 7+ years designing, maintaining and improving all size of application Infrastructure as System Engineer and now as Cloud Engineer.
  • 4+ years using AWS. I'm Amazon Solutions Architect working on infrastructure automation using tools like Terraform, Cloudformation, Sam, Serverless, Fargate, CodePipeline, Docker, Python.
  • Currently working as DevOps/Cloud Engineer
  • Also studying and learning Data Science and Machine Learning. He've got AWS Certified Machine Learning - Specialty (MLS)

Please provide a cost breakdown of the proposed work and resources

Roles needed

Role Name: Project Manager

  • Hourly Rate (ADA/h): 67
  • Description: The Project Manager will oversee the planning, execution, and delivery of the project. They will coordinate the activities of the development team, ensure project milestones are met, and manage communication with Project Catalyst Fundation. He will be responsible for defining the project scope, formulating the detailed project plan, assigning resources, monitoring progress, conducting team meetings, implementing quality assurance processes, and adapting the project plan based on feedback and changing requirements.

Role Name: Technical Architect

  • Hourly Rate (ADA/h): 80
  • Description: He will lead the process of determining the most suitable architecture and technology stack for the website, database, and REST API. He will also contribute to the design and implementation of the authentication system and collaborate on database design.

Role Name: Blockchain Developer

  • Hourly Rate (ADA/h): 93
  • Description: The Blockchain Developer specializes in developing applications and solutions using blockchain technology. He will collaborate with the Full Stack Developer. He will also play a role in designing and implementing features related to token and minting policies information retrieval and AI analysis.

Role Name: Full Stack Developer

  • Hourly Rate (ADA/h): 93
  • Description: The Full Stack Developer is skilled in both front-end and back-end development. He will collaborate with the Technical Architect and Blockchain Developer to implement the authentication system, user management, and database design. They will also be responsible for developing the REST API, designing and implementing the UI/UX, and integrating the UI with the REST API.

Role Name: DevOps Engineer

Hourly Rate (ADA/h): 80

  • Description: The DevOps Engineer focuses on the deployment, automation, and maintenance of the project's infrastructure. He will work closely with the development team to ensure smooth operations, scalability, and continuous integration/continuous deployment (CI/CD) processes. They will be responsible for setting up and managing the development, staging, and production environments and ensuring the availability and reliability of the platform.

Milestone 1: Architecture Design and Specification Key Actions

  • Project Manager: 30h * 67 ADA = 2,010 ADA
  • Technical Architect: 120h * 80 ADA = 9,600 ADA
  • Full Stack Developer: 40h * 93 ADA = 3,720 ADA

Subtotal: 15,330 ADA

Milestone 2: Smart Contract Development Key Actions

  • Project Manager: 40h * 67 ADA = 2,680 ADA
  • Technical Architect: 40h * 93 ADA = 3,730 ADA
  • Full Stack Developer: 40h * 93 ADA = 3,730 ADA
  • Blockchain Developer: 320h * 93 ADA = 29,760 ADA

Subtotal: 39,880 ADA

Milestone 3: Off-Chain Module Development Key Actions

  • Project Manager: 40h * 67 ADA = 2,680 ADA
  • Full Stack Developer: 240h * 93 ADA = 22,320 ADA
  • Blockchain Developer: 160h * 93 ADA = 14,880 ADA
  • Technical Architect: 40h * 93 ADA = 3,720 ADA

Subtotal: 43,600 ADA

Milestone 4: Integration and Testing Key Actions

  • Project Manager: 20h * 67 ADA = 1,340 ADA
  • Full Stack Developer: 120h * 93 ADA = 11,160 ADA
  • Blockchain Developer: 120h * 93 ADA = 11,160 ADA
  • Quality Assurance Specialist: 40h * 67 ADA = 2,680 ADA

Subtotal: 26,340 ADA

Milestone 5: Documentation, Code Review, and Deployment in Testnet Key Actions

  • Project Manager: 20h * 67 ADA = 1,340 ADA
  • Full Stack Developer: 180h * 93 ADA = 16,740 ADA
  • Blockchain Developer: 100h * 93 ADA = 9,300 ADA
  • Blockchain Developer (Code Review) = 25,000 ADA
  • Quality Assurance Specialist: 120h * 67 ADA = 8,040 ADA

Subtotal: 60,420 ADA

Overall Total: 185,570 ADA

Integration with CCIP providers like ChainLink, CryptoLink, or others is a requirement.

How does the cost of the project represent value for money for the Cardano ecosystem?

We, at Protofire, are thrilled to submit our proposal for the Catalyst Grant Program, highlighting our strong determination to contribute to the Cardano ecosystem as +80 Engineer Company.

We will outline our approach, emphasizing the importance of quality, adherence to timelines and milestone-based projects, and our proven track record in diverse markets.

While profitability is undoubtedly a critical aspect of any project, we know that onboarding Cardano requires a long-term vision that extends beyond immediate financial gains. We understand that investing in this new technology may initially result in costs that surpass our break-even point.

However, we firmly believe that by strategically positioning ourselves within this ecosystem, we will eventually become a main character that can drive and produce great value for everyone.

So for Cardano, this proposal represents a world-class team working on an open-source tool for half the cost. It's definitely a good deal!

The cost of the project represents value for money for the Cardano ecosystem in several ways:

  1. Innovation and Scalability: The project focuses on enhancing the capabilities of smart contract cross-chain interactions with the Cardano blockchain. By offering an efficient and scalable integration to CCIP.
  2. Integration with other Networks by official providers: To maximize the impact, we aim to integrate our system with existing CCIP providers like ChainLink or CryptoLink.
  3. Increase accessibility in the Cardano Network: The foremost goal is to build a system that enables users to access contracts on the Cardano network without the need to move digital assets by centralized third parties.
  4. Enhance Security and Trust in the Cardano Ecosystem: By increasing transparency, we aim to build a more secure environment within the Cardano ecosystem where users can make informed decisions.
  5. Knowledge Sharing and Documentation: With comprehensive documentation and examples, the project acts as a knowledge base for Cardano developers who want to integrate with other networks and for non-Cardano developers to integrate with the Cardano blockchain. This education can accelerate the adoption of Cardano technology and attract more talent to the ecosystem.
  6. Expand Developer Adoption: By providing tools that make Cardano contracts more accessible, we hope to lower the barriers to entry for new developers and users alike.
close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00