over budget
Enabling custom transactions for CIP-30 wallets
Current Project Status
Unfunded
Amount
Received
₳0
Amount
Requested
₳100,000
Percentage
Received
0.00%
Solution

A Web UI transaction builder for CIP-30 wallets lets users easily construct custom transactions (e.g., Datum, Redeemer, outputs) without relying on cardano-cli or coding, streamlining experimentation.

Problem

Cardano wallets lack custom transaction-building features (e.g. setting a custom Datum, Redeemer, output definitions), so experimentation can only be done via tools like cardano-cli or web libraries.

Feasibility
Impact Alignment
Value for money

Team

1 member

Enabling custom transactions for CIP-30 wallets

Please describe your proposed solution

Most Cardano wallets are designed with simplicity in mind, offering limited advanced features to accommodate beginner users. Conversely, developers frequently rely on tools such as cardano-cli, local cardano-node, or libraries like Lucid to manually construct transactions when testing both on-chain and off-chain code. This process can be labor-intensive and prone to error. A user-friendly Web UI transaction builder, compatible with all CIP-30 wallets, would significantly simplify manual testing, particularly for edge cases, making the development process far more efficient.

The proposed solution is a user-friendly Web UI transaction builder that supports all CIP-30 compliant wallets. This tool will streamline the process of manually constructing transactions, making it significantly easier for developers to test edge cases without needing to rely on command-line tools or coding the transactions by hand.

For example, when a dApp backend aggregates transactions in a database and an unexpected transaction structure occurs, weak error handling can lead to the entire backend failing. By utilizing this Web UI TX builder, developers can simulate such edge cases ahead of time, allowing them to identify potential issues before they occur in production environments.

This solution not only benefits developers but also has broader utility for the general Cardano community. By expanding the feature set of all CIP-30 wallets, it unlocks educational opportunities, enabling users to build custom transactions and experiment with the eUTxO model in a practical setting. For educational use cases, this tool can be integrated into Cardano-related courses, offering students hands-on experience in constructing custom transactions.

For instance, when I began my journey as a Cardano developer shortly before the Alonzo hardfork, I gained valuable insights by experimenting on the Alonzo-purple testnet and studying the Plutus Pioneer Program videos by Lars Brünjes. The eUTxO examples demonstrated in these sessions (e.g., https://youtu.be/IEn6jUo-0vU&t=505) could be effectively replicated by students using the proposed Web TX builder, enhancing the learning experience by providing an interactive platform.

The envisioned solution will be similar to the Marlowe smart contract drag-and-drop playground, but designed for constructing transactions. After connecting their CIP-30 compliant wallet, users will be able to select inputs from their wallet or specify a TXID and index of a script eUTxO. They can then define PubKey/Script outputs, along with corresponding amounts of ADA or native tokens, and specify Script CBORs with Redeemers and Datums, metadata, collateral, fees, and change address. After that they can submit the transaction with their connected wallet through the Builder UI.

This solution will be packaged as a user-friendly, open-source web application, designed for ease of use and readability, ensuring that both developers and general users can benefit from a seamless transaction-building experience.

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

In what way will the success of your project bring value to the Cardano Community?

Enhanced Manual Testing of Edge Cases - The custom transaction builder will facilitate easier manual testing of edge cases for Cardano smart contracts and off-chain code. Developers often face challenges when unit tests are overlooked or when they wish to test specific scenarios, such as using a different datum value. The ability to quickly simulate various transaction scenarios will help prevent unexpected outcomes and ensure robust error handling, ultimately reducing the risk of downtime for the Cardano dApps.

Improved Safety for Cardano dApps - By enabling more comprehensive testing of on-chain edge cases, the custom TX builder will contribute to the overall safety and reliability of Cardano dApps. Developers can identify and rectify potential issues before final deployment, which can significantly mitigate the risk of operational failures and enhance user confidence in dApp stability.

Extended Feature Set for All CIP-30 Wallets - The transaction builder will enrich the functionality of all existing CIP-30 wallets. Whether testing edge-case transactions with Lace, sending creative messages via Nami, or executing duplicate swap requests through Eternl, users will have the tools to explore the full capabilities of their wallets, fostering greater engagement and innovation within the ecosystem.

Expanded eUTxO Educational Materials - This tool can serve as a valuable resource for educational courses by enabling users to experiment with eUTxO transactions in a hands-on manner. Instructors can incorporate practical exercises using the Web TX builder into their courses, enriching the learning experience and promoting a deeper understanding of Cardano's transaction model.

Auditing of Existing dApps - This tool could allow proactive users to test the resilience of existing dApps by sending transactions with atypical inputs, such as an empty datum. Observing how dApps respond to these challenges could encourage developers to improve their infrastructure, ultimately strengthening the overall ecosystem.

Encouraging Proactive Testing - By providing developers and users with a platform for transaction experimentation, we will promote proactive testing and creative problem-solving within the Cardano community. This initiative will lead to the development of more resilient dApps and inspire new ideas and use cases that leverage the unique capabilities of the Cardano blockchain.

How will you measure this impact?

To assess the project's impact, feedback gathered through a dedicated form included in the project's README will be used for measurement. Additionally, a "Provide Feedback" button linking to the form can be integrated into the tool to streamline user responses and enhance the collection of valuable insights.

How will you share the outputs and opportunities that result from your project?

The outputs and opportunities that result from the project will be shared on Medium and Twitter (<https://x.com/CardanoProphet>)

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?

I bring over 8 years of combined experience in software development, including more than 3 years in the Cardano ecosystem and 5 years working in Web2 technologies. Currently, I work as a senior full-stack developer for one of the top DeFi protocols on Cardano.

In addition to my professional experience, I am an active contributor to the Cardano community under the pseudonym "CardanoProphet," through which I regularly post educational and fun content aimed at promoting broader understanding of the Cardano blockchain. My public profile, including educational posts and updates, can be found at <https://x.com/CardanoProphet>

I have also independently developed and launched two small Cardano projects:

  • Cardaport.io Minter: A simple, free NFT minter for Cardano (<https://cardaport.io/minter>).
  • CardaCraft: A virtual world leveraging Cardano CNFTs and Blockfrost (similar to projects like Pavia), which can be found at <https://x.com/CardaCraft>

To demonstrate my commitment to accountability and trust, I have structured the funding for this proposal with a conservative approach. I have requested a reduced amount of ADA in the first milestone, allowing me to deliver tangible results before seeking additional funding for subsequent phases. This approach ensures that I can prove my capabilities through deliverables, while minimizing risk for the Catalyst Fund.

The technologies selected for this solution are proven and highly reliable. I have personally tested key dependencies, including the web transaction building libraries (MeshSDK, Lucid) for both script and non-script transactions and CIP-30 wallet connectivity, all of which performed as expected. These were also utilized in the Cardaport.io minter, further reinforcing my confidence in the chosen tools and ensuring they are well-suited for the project. Therefore, no major feasibility concerns are anticipated.

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

Milestone 1: Milestone 1: Portal Design, Static Wireframes, and Initial Documentation

  • Outputs:
  • Wireframes that outline the structure of the Web UI, illustrating key actions such as selecting eUTxOs, building transactions, and submitting them
  • Initial documentation detailing the product architecture and functionality
  • Acceptance Criteria
  • Completed website design with wireframes
  • Documentation that provides a detailed explanation of the product's structure and functionality
  • Wireframes and documentation made publicly available
  • Evidence
  • Code repository
  • Wireframes and initial documentation publicly available in the repository: <https://github.com/CardanoProphet/tx-builder>
  • Video demonstration
  • A video walkthrough showcasing the design and wireframes
  • Shared at <https://x.com/CardanoProphet>

Milestone 2: Milestone 2: Wallet Integration and Basic Transaction Building

  • Outputs
  • Integration of CIP-30 compliant wallets (e.g., Nami, Eternl) with the Web UI
  • Ability to retrieve eUTxOs from connected wallets
  • Basic functionality to construct and submit non-script transactions using the Web UI
  • Acceptance Criteria
  • Wallet connection works seamlessly, and eUTxO data can be retrieved for connected accounts
  • Users can successfully build and submit basic ADA or native token transactions
  • Evidence
  • Code repository
  • The updates related to this milestone are publicly available in the repository: <https://github.com/CardanoProphet/tx-builder>
  • Video demonstration
  • A video walkthrough demonstrating wallet connection, eUTxO retrieval, and submission of a simple transaction
  • Shared at <https://x.com/CardanoProphet>

Milestone 3: Milestone 3: Support for Script Transactions

  • Outputs
  • Added support for constructing script-based transactions, including selecting Script eUTxOs, defining Redeemers, Datums, and specifying Collateral
  • Enhanced transaction builder UI to handle script inputs/outputs
  • Acceptance Criteria
  • Users can build and submit transactions that contain scripts through the UI
  • Correct handling of Redeemers, Datums, and collateral selection during transaction construction
  • Evidence
  • Code repository
  • The updates related to this milestone are publicly available in the repository: <https://github.com/CardanoProphet/tx-builder>
  • Video demonstration
  • A video demonstration of building and submitting script transactions
  • Shared at <https://x.com/CardanoProphet>

Milestone 4: Milestone 4: Finish the front-end and final polishing

  • Outputs
  • Replacing the "basic prototype UI" with a polished UI based on wireframes from the Milestone 1
  • Acceptance Criteria
  • The final front-end meets design specifications from Milestone 1, ensuring a visually appealing and intuitive user experience
  • All core functionalities (non-script transactions, script transactions) work smoothly in the final UI
  • Evidence
  • Code repository
  • The final code is available at: <https://github.com/CardanoProphet/tx-builder>
  • Video demonstration
  • A video walkthrough of the final polished front-end
  • Shared at <https://x.com/CardanoProphet>

Final Milestone: Milestone 5: Project Close-out Report and Video

  • Outputs
  • Project Close-out Report
  • Providing a detailed summary of the project’s overall achievements, and the milestones completed
  • Includes an overview of each milestone, detailing the specific outputs, and how each milestone was successfully met
  • A breakdown of the final state of the Web UI TX Builder, including setup and usage instructions
  • Project Close-out Video
  • A final project video demonstrating the complete solution, from wallet connection to transaction building
  • Acceptance Criteria
  • The close-out report clearly describes the project from start to finish, including setup details, tutorial, and milestone achievements
  • The final project video demonstrates a working product and includes a tutorial for users
  • The report and video are publicly available and shared with the Cardano community
  • Evidence
  • The project report will be published on Medium and shared on X at <https://x.com/CardanoProphet>
  • The final project demonstration video will be posted and shared on X at <https://x.com/CardanoProphet>

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

CardanoProphet (<https://x.com/CardanoProphet>)

As this is an individual project, I will be responsible for developing and managing all aspects of the process, from planning and design to implementation and deployment. I will ensure that each phase is executed efficiently and that the project meets its objectives. With over 8 years of development experience, I am confident in my ability to handle the technical and operational demands required to successfully deliver the Web Transaction Builder.

Additionally, I have an additional full-stack developer available as a backup, should the need arise. This developer can assist with any technical challenges or additional development work, ensuring the project’s continuity and timely delivery.

Please provide a cost breakdown of the proposed work and resources

The proposed budget is structured at 20,000 ADA (approximately 7,000 USD pre-tax) per month, with the project expected to take approximately five months to complete, totaling 100,000 ADA. To demonstrate good faith and accountability, the budget for the first milestone will be reduced by 50%, with the remaining amount allocated to the final milestone. This structure allows for a lower initial payment, ensuring that I can deliver results before receiving the full payment for the first milestone.

Total project budget: 100,000 ADA

Milestone 1: Portal Design, Static Wireframes, and Initial Documentation

  • 23,750 ADA - 11,875 ADA = 11,875 ADA (11.875% of the total budget)
  • Estimated time: 4 weeks

Milestone 2: Wallet Integration and Basic Transaction Building

  • 23,750 ADA (23.75% of the total budget)
  • Estimated time: 5 weeks

Milestone 3: Support for Script Transactions

  • 23,750 ADA (23.75% of the total budget)
  • Estimated time: 5 weeks

Milestone 4: Finish the front-end and final polishing

  • 23,750 ADA (23.75% of the total budget)
  • Estimated time: 5 weeks

Milestone 5: Project Close-out Report and Video

  • 5,000 ADA + 11,875 ADA = 16,875 ADA (16.875% of the total budget)
  • Estimated time: 1 week

No dependencies.

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

This project offers significant value for money to the Cardano ecosystem by providing a much-needed, user-friendly tool for custom transaction construction that is compatible with CIP-30 wallets. The solution addresses a critical pain point in the current development workflow, where developers often rely on complex and time-consuming command-line tools such as cardano-cli or cardano-node to manually build transactions for manual testing and development. This Web UI TX builder will drastically simplify that process, increasing efficiency and reducing the potential for human error when constructing custom transactions.

By offering an intuitive and open-source interface, this tool will not only benefit developers but also provide broader utility to the Cardano community. It will unlock advanced transaction-building capabilities for users, enabling hands-on interaction with the eUTxO model. This will serve as both a practical development aid and an educational resource, expanding the accessibility of Cardano's tech to a wider audience.

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