vote pending
Marlowe 2025: Developer-Driven Platform Enhancements
Current Project Status
vote pending
Amount
Received
₳0
Amount
Requested
₳187,500
Percentage
Received
0.00%
Solution

A DevEx-focused Marlowe platform with optimized contracts, richer DApp Starter Kit and lightweight backend for seamless onboarding will make Marlowe a first-class option for DApp developers.

Problem

Improvements in developer experience, performance, and runtime efficiency will remove the obstacles in the way of the Marlowe Platform fully leveraging its potential for efficient DApp creation.

Team

3 members

Marlowe 2025: Developer-Driven Platform Enhancements

Please describe your proposed solution

Marlowe 2025

This is one of a set of proposals that together consolidate the Marlowe infrastructure and improve the developer experience, enhance Marlowe with an innovative oracle protocol, developed in collaboration with leading Cardano oracle providers, and design the successor core language, Marlowe V2, working with the Marlowe developer ecosystem.

Solution Summary

Our proposal, Marlowe 2025: Platform Enhancements for Cardano Developers, is designed to transform Marlowe into the most accessible, efficient, and developer-friendly platform for building DApps on the Cardano blockchain. Our enhancements focus on optimizing contract execution, refining the developer experience, and expanding Marlowe’s runtime capabilities—all aligned with the needs of the Cardano developer community.

Problem Overview

Currently, Marlowe offers a secure, high-level DSL for smart contracts but requires improvements to fully support a seamless, low-cost, and developer-centric experience. While Marlowe has robust foundational tools, it lacks critical optimizations in contract execution, developer workflow, and runtime flexibility. This limits its appeal for rapid DApp development and broader adoption among developers accustomed to mainstream blockchain tools.

Solution Breakdown

Our solution comprises targeted, modular enhancements across the Marlowe platform. These are tailored to increase ease of integration, reduce on-chain costs, and broaden Marlowe’s appeal as a versatile tool for both novice and experienced Cardano developers.

Enhanced Validator Execution

  • Fine-Grained Double Satisfaction Control: To minimize the need for additional Notify steps in contracts, we will add finer control over double satisfaction prevention. This will reduce redundant steps in contract execution, lowering on-chain costs and improving efficiency.
  • Automatic Withdrawal Mechanism: During contract closure, we will introduce an automatic withdrawal feature if the role token is present, simplifying end-of-contract handling for developers and contract participants.
  • Input Authorization via Signing for Micropayments: By introducing input signing, we will enable incremental off-chain micropayments as part of contract execution, opening new avenues for real-time applications within Marlowe.

Streamlined Runtime API and TypeScript SDK Enhancements

  • Simplified Contract State Management: We will enhance the API to make contract integration in DApps straightforward, treating contract states as manageable, named stages and transitions. This allows contract integrators to focus exclusively on their business logic and easily overlay a custom UI, tailored to their unique requirements.
  • Merkleization and Runtime Integration: We aim to bring Merkleization into the core runtime lifecycle APIs to streamline use, making complex contract logic easier to integrate.

Runtime Enhancements

  • Configurable Runtime Fee Mechanism: For sustained development and platform scaling, we will add a fee mechanism where service providers can set contract execution fees. This feature, explicitly defined in the API, will enable monetization, incentivizing infrastructure providers and increasing Marlowe’s appeal as a revenue-generating platform for service providers and developers alike.

Engagement and Value Proposition

Our project will engage a diverse spectrum of developers, including DApp developers, infrastructure providers, and both new and established Cardano community members. By addressing core pain points around developer experience, execution cost, and usability, our enhancements aim to make Marlowe a go-to tool within the Cardano ecosystem. With these changes, Marlowe will not only facilitate the creation of secure financial applications but will also empower developers to build innovative, complex DApps with ease.

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

Our project, Marlowe 2025: Platform Enhancements for Cardano Developers, aims to elevate Marlowe as a highly accessible and efficient smart contract platform within the Cardano ecosystem. By improving the developer experience and enhancing runtime capabilities, we’re committed to driving broader adoption and innovation on Cardano. This proposal will serve not only current users but also attract new developers by offering streamlined contract integration, cost-efficient contract execution, and simplified deployment options.

Value to the Cardano Community

Our enhancements are designed to expand Marlowe’s usability and appeal across multiple developer and stakeholder groups:

  • Developers and DApp Builders: Marlowe’s simplified integration and high-level abstractions will make it more approachable for developers, helping them save time and costs on complex smart contract development. Features like streamlined state management, Merkleization integration, and input signing for micropayments mean developers can focus on their core business logic instead of low-level execution details. The impact will manifest as an increase in innovative DApps built on Cardano, spanning finance, micropayments, and more.
  • Infrastructure Providers and Service Providers: Optional runtime fees offer infrastructure providers a clear incentive to integrate Marlowe into their offerings. By allowing configurable transaction fees, Marlowe aligns with sustainable business models for service providers, fostering a cooperative ecosystem and positioning Marlowe as a value-generating component within the Cardano infrastructure.
  • Developers Seeking Lightweight Solutions: The introduction of an optional lightweight indexer with SQLite support targets developers seeking a faster, simpler approach to working with on-chain data. By minimizing resource requirements, we reduce the entry barriers for developers looking to build without extensive infrastructure, broadening Marlowe’s appeal to a larger audience.

Impact Measurement

To gauge the success of our enhancements, we will monitor both quantitative and qualitative metrics:

  • Adoption Metrics: We will track the number of Marlowe contracts deployed and actively used on the Cardano mainnet and testnets, with a particular focus on contracts using new features like micropayment integrations, Merkleization, and the simplified state management APIs.
  • Developer Feedback and Engagement: Feedback from the community will be crucial in evaluating the success of our improvements. We will gather qualitative data through user feedback from early testers, developer forums, and community discussions, which will help refine our approach and ensure our enhancements align with real developer needs.

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?

Unique Experience in Developing Marlowe Technology

Simon Thompson is one of the original designers of the Marlowe language, and the other applicants are core maintainers of the Marlowe language and core team members of the Marlowe Project under IOG.

Review and design processes will be public and open-source

The review will be community-based, and the final report, together with the Agda implementations 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.

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

Milestone 1: Validator Execution Optimization

  • Rationale: Optimizing the Marlowe validator is key to enhancing contract efficiency by reducing the number of transactions needed for contract completion. We aim to simplify contract execution, particularly for common contracts like open swaps or auctions and improve efficiency by implementing fine-grained control over double satisfaction checks and enabling automatic withdrawals based on role tokens.
  • Outputs:
  • Validator Changes:
  • Introduction of proper thread token using CIP-0069 capabilities.
  • Introduction of finer control over double satisfaction to avoid extra Notify steps.
  • Addition of an automatic withdrawal mechanism during contract closure when a role token is present.
  • Runtime Changes:
  • Thread token is removed from the developer facing Runtime API and is handled seamlessly in the background.
  • Integration of these validator changes within the Marlowe Runtime.
  • REST API enhancements to enable the automatic withdrawal feature.
  • Acceptance Criteria:
  • Thread token is successfully managed and the Runtime API is updated.
  • Successful optimization of a common swap contract, reducing it to two transactions instead of four.
  • Demonstration of automatic fund withdrawal upon contract closure.
  • Evidence of Milestone Completion:
  • Release of updated validators, Marlowe Runtime, and TypeScript SDK (TS-SDK) supporting optimized execution.
  • Deployment of an Atomic Swap DApp prototype showcasing the new features on preprod and mainnet.
  • Accompanying documentation detailing the optimization and showcasing the

Milestone 2: Micropayments via Signed Inputs

  • Rationale: Introducing off-chain micropayment functionality will enable Marlowe to support real-time payments akin to payment channels (e.g., Lightning Network). This milestone focuses on partial payments through signed inputs, enhancing cost efficiency and making Marlowe contracts more competitive for end users.
  • Outputs:
  • Validator Changes:
  • Unique tagging of the contract nodes to enable safe in and cross contract input identification.
  • Support for input authorization through direct Input signatures, enabling micropayment functionalities.
  • Runtime Changes:
  • REST endpoint for signing inputs to facilitate partial off-chain payments.
  • Full integration of validator changes into the runtime.
  • Acceptance Criteria:
  • Successful off-chain partial payments executed via signed inputs, with final settlement performed on-chain in a single transaction.
  • Deployment of an example contract demonstrating micropayments functionality.
  • Evidence of Milestone Completion:
  • The example contract with micropayment functionality available on the main branch of the marlowe-ts-sdk GitHub repository, tested on an updated Runtime version.
  • Release of a revamped Bounty DApp showcasing the micropayments capability, with documentation included in the enhanced Marlowe DApp Starter Kit.

Milestone 3: Seamless DApp Integration for Complex Contracts

  • Rationale: This milestone aims to provide a simplified DApp integration experience for complex Marlowe contracts. By introducing state annotations and integrating Merkleization examples into the Runtime API, we’ll enable developers to manage Marlowe contract execution as a straightforward state machine, focusing only on business logic.
  • Outputs:
  • Enhanced State Management:
  • Implementation of state and transition annotation capabilities for Marlowe contracts.
  • SDK & Runtime Integration:
  • Merkleization examples integrated seamlessly into the runtime lifecycle API, simplifying contract management.
  • Prototype Update:
  • Prototype Token Plan v2, which supports multiple periods with fewer transactions and incorporates state annotations.
  • Acceptance Criteria:
  • Successful deployment of a Token Plan prototype (v2) allowing simplified state management and extended contract periods with fewer transactions.
  • Use of the updated Marlowe TS-SDK with the state and transition annotations.
  • Evidence of Milestone Completion:
  • The Token Plan v2 prototype will be deployed on preprod and mainnet, accompanied by thorough documentation.
  • An updated guide in the Marlowe DApp Starter Kit, showcasing optimized contract execution and detailing new features.

Milestone 4: Runtime Monetization

  • Rationale: To encourage sustainable development within the Marlowe ecosystem, we aim to introduce a fee mechanism that enables infrastructure providers to charge fees for contract execution. This would incentivize the broader adoption of Marlowe by creating opportunities for service providers to monetize their offerings.
  • Outputs:
  • Runtime Fee Mechanism:
  • Integration of a configurable fee system within the Marlowe Runtime, with transaction fees set by providers.
  • Explicit API updates reflecting fee amounts and recipient addresses.
  • Full frontend validation of Marlowe transactions so clients can use untrusted Runtimes
  • Acceptance Criteria:
  • Runtime successfully handles fees for contract execution, with provider-specific configuration.
  • Client library handles Marlowe transaction validation
  • Deployment of a prototype showing the monetization process.
  • Evidence of Milestone Completion:
  • Public deployment of a fee-enabled Marlowe Runtime.
  • Detailed documentation in the Marlowe GitHub repository, outlining the fee mechanism and usage for service providers.

Final Milestone: Project Close-out Report and Video

  • Outputs: We will produce a completion report and video summarizing the project’s achievements, challenges, and future directions, shared publicly with the Cardano community.
  • Acceptance Criteria:
  • Completion report available on the Marlowe GitHub repository, with a link provided to reviewers.
  • Video published on YouTube and other community platforms.
  • Evidence of Milestone Completion:
  • Public links to the final report and video, accessible to the Cardano community for transparency and knowledge sharing.

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

Tomasz Rybarczyk, who was an experienced member of the Marlowe team for a number of years, and who is part of the Marlowe continuity team, will be responsible for the main part of the work on the validator, Marlowe Runtime and the TS-SDK.

Simon Thompson, who is one of the original designers of Marlowe, will lead the project, mentoring and coordinating interactions with the community, taking part in the designing phase and review of the changes which will be introduced to the overall system and the validator.

Nicolas Henin (as consultant and reviewer), was an experienced member of the Marlowe team for a number of years will help desing, evaluate and review the design and implementation.

Please provide a cost breakdown of the proposed work and resources

Milestone 1: Validator Execution Optimization

Days: 35

Milestone 2: Micropayments via Signed Inputs

Days: 25

Milestone 3: Seamless DApp Integration for Complex Contracts

Days: 30

Milestone 4: Runtime Monetization

Days: 30

Milestone 6: Project Close-out Report and Video

Days: 5

Total days: 125

Cost per day: ₳1500

Total budget: ₳187 500

No dependencies

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

Investment in Marlowe 2025: Platform Enhancements for Cardano Developers will deliver immediate value by enabling a more efficient, developer-friendly environment. Each improvement directly addresses existing challenges for developers, from contract execution costs to integration complexity. By delivering a streamlined platform that lowers entry barriers and boosts contract efficiency, we provide a high-value toolkit for developers building on Cardano, ultimately fostering a more active and sustainable ecosystem.

Our costings are based on prevailing rates for researchers and developers in Europe, and we are charging the same rate for all contributors. We have a unique combination of skills in the team: one of the designers of the original Marlowe language, plus a team familiar with the systems of the Marlowe Platform, from the Marlowe validator. The team is highly experienced having previously worked as members of the core Marlowe team; there is therefore no time needed for the team to get up to speed: we hit the ground running.

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