funded
Ikigai + MLabs – Hydra app SDK and auction service
Current Project Status
In Progress
Amount
Received
₳990,172
Amount
Requested
₳1,302,857
Percentage
Received
76.00%
Solution

Upgrade the hydra auction reference implementation into a production-ready app deployable on mainnet and add UX improvements for commercial viability. Develop a general SDK for similar applications.

Problem

Cardano Hydra has been used to develop sophisticated applications that benefit from L2 scalability. However, additional work is required to turn these into production-ready services on Mainnet.

Impact / Alignment
Feasibility
Value for money

MLabs

2 members

Ikigai + MLabs – Hydra app SDK and auction service

Please describe your proposed solution.

This project will upgrade the reference implementation that was previously co-developed with IOG’s Hydra core dev team into a viable production-ready product, as follows:

  • Improve performance and robustness to production-ready levels.
  • Develop a browser-based frontend UI that provides a pleasant UX.
  • Upgrade backend services to support a vibrant ecosystem of sellers, bidders, and delegates creating and interacting with multiple auctions simultaneously.

As the next step, we will explore building an open-source SDK for delegated voucher auctions ready to be used by any dApp that needs auction features. Furthermore, the SDK should comprise modular components that can be reused in other hydra-based applications with similar smart-contract architectures.

For the auction’s smart contracts, we will need to implement the following new features optimizations:

  • Implement a mechanism for variable-size bidder deposits to be locked on L1 so that they can be used to fully back bids submitted for an auction on L2.
  • Implement open auctions — a more informal/casual auction format where bidders are free to place bids without requiring seller approval to enter the auction. This complements the closed auction format that has already been implemented, where the seller can vet bidders and choose which bidders to invite into the auction.
  • Use reference scripts for auction validators and minting policies.
  • Explore ways to make validators and minting policies non-parametric so that the same reference scripts can be reused in multiple auctions – possibly as a standardized modular component across different apps.

The reference implementation from the first two milestones can handle only a handful of auctions and has a rudimentary system for discovering auctions, bidders, sellers, delegates, and hydra heads. For a commercial product, this would have to be significantly improved with a suitably scalable and dynamic directory and state indexer for the auctions ecosystem:

  • Sellers, bidders, delegates, and others can discover which auctions are active, who the relevant participants are, and how to interact with them.
  • Lightweight subscriptions are available for events of specific auctions.
  • Aggregate metrics for current and historic auctions are available for general users.

We must develop frontend UI code to provide an ergonomic and pleasant UX for auctions. For this purpose, we will collaborate with existing projects in Cardano that have attained significant marketplace and auction UX expertise as early adopters of our SDK.

Ikigai Technologies has developed Grabbit, an NFT auction site made specifically with consumer and creator ergonomics in mind, built on top of a fully decentralized L1 auction protocol. They have already encountered and solved many of the complex challenges that come with connecting a clean, robust frontend with a complex onchain auction protocol without the common centralized shortcuts that could slow down a Hydra-based auction protocol.

Ikigai will collaborate with MLabs on the open-source SDK to ensure it is usable and scalable in a production environment. By testing the SDK in Grabbit functioning as an early adopter, Ikigai Technologies will demonstrate the SDK is built to be extendable and deployable to large-scale environments.

How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?

This project will deliver and integrate a production-ready product with the early adopter’s service platform, allowing Cardano users to finally benefit from the Hydra technology's faster finality and throughput promises for the auction use case.

Furthermore, this project will blaze the trail for other L2-enabled smart-contract applications, operationalizing the best practices and lessons learned into an SDK that will significantly lower the barrier for these applications to emerge on Cardano mainnet. The SDK will be geared primarily toward applications similar to the auction use case, but parts of the SDK will be broadly re-usable or adaptable to other applications.

Finally, to ensure integration readiness and improve confidence in the SDK for community consumption, Ikigai/Mlabs will be using Grabbit to guinea pig the versions during the development phase and showcase the SDK's extendability.

How do you intend to measure the success of your project?

The success of the commercial hydra-based auction app will be measured by the performance and UX gains that it manages to attain relative to the early adopter's pure-L1 auction application. In particular:

  • How the higher throughput and faster transaction finality enabled by Hydra translates in practice into a livelier bidding experience in the auction app.
  • Transaction fee savings for bidders, sellers, and delegates.

The success of the hydra auction SDK will be measured by the early adopter's reported ease of use and integration with the rest of their platform. Over the longer term, the SDK will be successful if it leads to more Cardano applications making the leap to upgrade part or all of their protocols to use the SDK for scalability on Hydra L2.

Please describe your plans to share the outputs and results of your project?

The project’s open-source codebase will reside in the project’s Github repository (possibly to be refactored into multiple repositories).

If/when the early adopter launches this project’s product, it will be available as a service via their website.

During the project’s development, usually near milestone completion, the development team will provide regular blog-style or video updates to the community, as appropriate.

What is your capability to deliver your project with high levels of trust and accountability?

MLabs, a leading consultancy in the Cardano ecosystem, has a proven track record and significant experience. Our team consists of seasoned engineers, each holding expertise in their respective fields. Moreover, we have consistently demonstrated our ability to deliver complicated projects with a high degree of trust and accountability. We have an extensive portfolio of satisfied client projects and several popular Catalyst projects. We're committed to upholding these standards for this proposal.

MLabs has developed the reference smart contracts for the hydra-based auction in a previous project and has a clear plan to improve and optimize them toward a viable product and operating model. As part of that project, MLabs has developed the beginnings of an SDK architecture sufficient for the milestone deliverables and demos of that project. The current proposal will build upon it, transforming it into a battle-tested SDK ready for real-world hydra-based applicaations.

Ikigai Technologies is a technology company that specializes in creating innovative solutions leveraging Cardano. The team is composed of experienced professionals in the fields of technology, business, and design. Considered a quiet builder, Ikigai has been developing solutions for marketplaces, data solutions, and game development with Grabbit, Logosphere, and GENUN Games.

Ikigai has built and deployed Grabbit — an L1-based auction with a rich user experience and a sophisticated smart contract model that does not require any privileged third parties to process bids and determine the winner (i.e. no batchers) while allowing multiple bidders to bid in parallel without interfering with each other (i.e. no utxo contention for bids).

MLabs and Ikigai are uniquely positioned to develop a state-of-the-art hydra app SDK, blazing the trial via the hydra auction app for many other builders on Cardano to bring new hydra-enabled experiences for Cardano users. Let the Cardano Basho era dawn!

What are the main goals for the project and how will you validate if your approach is feasible?

The main goal of this project is to develop an SDK for Hydra-based applications at the complexity level of auctions to be ergonomically developed so that more users and applications on Cardano can finally start benefitting from the scalability promises of Cardano.

A related goal of this project is to ensure that the SDK is capable of supporting applications all the way to a commercial launch in production on mainnet. We will pursue this goal by helping the early adopter to reach this milestone on their path of upgrading from a purely L1-based auction to the Hydra-based auction service ready for production.

Please provide a detailed breakdown of your project’s milestones and each of the main tasks or activities to reach the milestone plus the expected timeline for the delivery.

The following timeline assumes an Oct 2023 project start.

M1 – Research and basic UI (Nov 2023)

  • Develop basic web-based UI for hydra auction UX flow.
  • Research and specify the deposit mechanism for fully-backed bids and open auctions on L2.
  • Develop the frontend glue library to the WebSocket APIs of the backend smart contract systems.

M2 – Integration and further UI (Dec 2023)

  • Develop and integrate basic backend and cloud systems for the hydra auction platform.
  • Research and design an ergonomic UX for hydra auctions.
  • Implement improvements to the basic web-based UI for hydra auctions.

M3 – Analytics and further integration (Jan 2024)

  • Develop the analytics and aggregate metrics layer for hydra auctions.
  • Develop dashboards that connect to the analytics layer.
  • Develop and integrate further backend systems for the hydra auctions platform.

M4 – Testing and tooling (Feb 2024)

  • Develop tooling and systems for hydra head participant discovery/coordination and managing hydra heads (scheduled hydra head init/open, manage running heads, etc.).
  • Develop integration testing, error reporting, health checks, and monitoring systems for the hydra auction platform.

M5 – SDK (Mar 2024)

  • Develop the hydra application SDK so that applications with similar architectures to the hydra auction, reusing common components and best practices developed for the hydra auction platform.

M6 – Optimizations and robustness (Apr 2024)

  • Optimize the hydra auction smart contracts as needed to drive down operating costs for the hydra auction platform, incorporating optimizations into the hydra app SDK where feasible.
  • Improve the robustness of various systems in the hydra auction platform architecture.

M7 - Launch (May 2024)

  • Prepare, launch, and troubleshoot the testnet launch of the hydra auction platform.
  • Complete the hydra app SDK V1.0.

Please describe the deliverables, outputs and intended outcomes of each milestone.

M1 – Research and basic UI

Deliverables:

  • Basic web-based UI for hydra auctions.
  • Design and specification docs for fully-backed bids and open auctions on L2.
  • Frontend glue library and backend smart contract systems' APIs.

Acceptance criteria:

  • A demo is recorded to showcase the basic web-based UI.
  • Research docs are clearly written and complete.
  • The frontend glue library and backend smart contracts are functional and well-documented.

M2 – Integration and further UI

Deliverables:

  • Integrated basic backend and cloud systems for hydra auctions.
  • Research doc for hydra auction UX.
  • Improved web-based UI for hydra auctions.

Acceptance criteria:

  • Integrated architecture components of the hydra auction platform function well together.
  • Research docs are clearly written and complete.
  • A demo is recorded to showcase the improved web-based UI.

M3 – Analytics and further integration

Deliverables:

  • Analytics and aggregate metrics layer for hydra auctions.
  • Dashboards connected to the analytics layer.
  • Integrated further backend and cloud systems for hydra auctions.

Acceptance criteria:

  • Relevant analytics and aggregate metrics can be calculated and displayed in the web-based UI for the hydra auction platform.
  • Integrated architecture components of the hydra auction platform function well together.
  • A demo is recorded to showcase the analytics UI for the hydra auction platform.

M4 – Testing and tooling

Deliverables:

  • Tooling and systems for participant discovery/coordination and managing hydra heads.
  • Integration testing, error reporting, health checks, and monitoring systems for the hydra auction platform.

Acceptance criteria:

  • Prospective hydra head participants can discover each other and coordinate the opening of their hydra heads to provide services to the hydra auction platform.
  • Testing, error reporting, and monitoring systems cover the critical parts of the architecture.

M5 – SDK

Deliverables:

  • SDK for hydra applications with similar architectures to the hydra auction.

Acceptance criteria:

  • SDK covers architecture components of the hydra auction platform to the extent that they are common/reusable across similar architectures.
  • SDK is functional and well-documented.
  • A demo is recorded to showcase the development workflow with the SDK.

M6 – Optimizations and robustness

Deliverables:

  • Optimized smart contracts for hydra auctions and app SDK.
  • Improved robustness for hydra auction platform.

Acceptance criteria:

  • Reports on optimization and robustness improvements are clearly written and complete.

M7 - Launch

Deliverables:

  • Hydra auction platform launch on testnet.
  • Completed hydra app SDK V1.0.

Acceptance criteria:

  • Hydra auction platform is launched and supported on testnet.
  • Hydra app SDK is complete and well-documented, with detailed usage/deployment docs, rich examples, and tutorials.

Please provide a detailed budget breakdown of the proposed work and resources.

The budget breaks down by hours of effort into the following activities, grouped by category:

  • Smart contracts:
  • 250 h — Implement open auction smart contracts
  • 200 h — Research and implement a mechanism for full-backed bids on L2
  • 80 h — Smart contract optimizations
  • Integration:
  • 100 h — Frontend glue library to connect to WebSocket APIs of backend smart contract systems
  • 120 h — Hydra head participant discovery and deployment tooling
  • 400 h — Implement and integrate with production-quality backend systems
  • 150 h — Integration testing, error reporting, health checks, monitoring systems
  • Frontend and analytics:
  • 80 h — Hydra auction UX design
  • 350 h — Develop the web-based frontend UI with CIP-30 wallet integration
  • 100 h — Develop analytics, aggregate metrics, dashboards
  • Deployment:
  • 100 h — Prepare, launch, and troubleshoot on testnet
  • Support and ecosystem:
  • 20 h — Consultations with entrepreneurs, developers, and users on Cardano to make sure that the SDK works best for them.
  • 150 h — Specifications, deployment & usage docs, examples & tutorials.
  • 150 h — Ongoing support for several months after project completion.
  • 150 h — Contributions to upstream libraries (e.g. iohk/hydra) and improvements via CIPs.
  • Change budget:
  • 480 h (20%) — Reserved for changes to business requirements resulting from stakeholder consultations throughout the project timeline and/or due to technical pivots necessary to deliver a better product/outcome.

The total hours of effort estimated for the project is 2,880 h.

At $95/h, the USD cost of these activities is $273,600.

We apply a 0.21 USD/ADA exchange rate, which is the average rate over the past few months conservatively adjusted downward to ensure that the project will remain viable despite moderate price shocks that may occur before or during the project timeline.

The corresponding total ADA cost of the project is 1,302,857 ADA.

We propose a linear budget allocation schedule for the milestones:

  • M1 = 15%
  • M2 = 15%
  • M3 = 15%
  • M4 = 15%
  • M5 = 15%
  • M6 = 15%
  • M7 = 10%

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

George Flerovsky (MLabs) as Product Owner and Delivery Manager

Michael Yagi (Ikigai) as Technical Project Manager

Philip DiSarro (Ikigai) as Tech Lead – Smart Contracts and Integration

Allan Deutsch (Ikigai) as Tech Lead - Frontend & Services

Gregory Gerasev (MLabs) as Backend Developer – Smart Contracts and Hydra

Sam Delaney (Ikigai) as Full Stack Developer - Smart Contracts and UI Integration

Cliff Garvis (Ikigai) as Backend Developer - Services and Architecture

Eric Phan (Ikigai) as Frontend Developer - UX/UI Design and Implementation

Note: other team members will be assigned to the project closer to its start date, and additional team members may contribute to the project throughout its timeline. They will be chosen to best align the available staff’s diverse skill sets towards the top priorities of the milestones being pursued.

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

The costs described in the budget breakdown of this proposal have been developed based on a detailed plan of the activities required to achieve the milestones. We have high confidence in the comprehensiveness and accurate sizing of these activities, as we have engaged in very similar projects to this in the past at complexity level and subject domain. In particular:

  • Ikigai Technologies has just recently concluded its work to bring an L1-based auction product from a set of complete smart contracts to a production-grade auction platform – recently launched on testnet for users to try out. The current proposal will mostly involve the same type of work but for a new set of smart contracts that also include an L2 component.
  • MLabs has developed one of the first non-trivial applications using Hydra technology, and it has developed a very good sense of what is involved in developing these types of L2-scalable applications.

The USD hourly rate is a typical rate that we and our fellow developers in the smart contracts and dApp sector have used in past projects to provide high-quality services, with a proven track record of delivering projects despite the complexity of viable applications in this space. This requires experts on staff for a diverse range of niche skillsets and deep knowledge of the Cardano and Hydra protocols, the EUTXO model, and the modern practices of dApp design.

The USD/ADA exchange rate reflects the average rate over the past few months, conservatively discounted down to 0.21 USD/ADA to allow the project to remain viable despite potential price shocks that may occur after proposal submission and during the project timeline.

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