funded

Anastasia Labs - Lucid Evolution: Redefining Off-Chain Transactions in Cardano

₳48,000.00 Received
₳200,000.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Impact Alignment
Feasibility
Value for money
Solution

Ensure long-term clarity by consistent maintenance, address GitHub issues, create new pull requests, and upgrade Lucid to the latest CML versions for sustained effectiveness.

Problem:

Copy-of-White-Minimalist-Profile-LinkedIn-Banner-7-023801.png

Revive Lucid, a vital Cardano core library, tackling maintenance lapses, hard fork readiness, GitHub backlog, unmerged PRs, and ensuring sustained reliability.

Yes Votes:
₳ 174,614,969
No Votes:
Votes Cast:
534

This proposal was approved and funded by the Cardano Community via Project F11: Cardano Open: Developers - technical Catalyst funding round.

[SOLUTION] Please describe your proposed solution.

Challenges and Goals:

The primary challenges we aim to address are the lack of maintenance for the library, inadequate support for the upcoming hard fork, a growing backlog of GitHub issues in the original repository, unmerged pull requests, and a scarcity of individuals proficient in maintaining the repository. Our goal is to rejuvenate and fortify the project, ensuring it remains resilient and responsive to the evolving landscape of technology and user needs.

Why Lucid Maintenance is Crucial:

Maintenance of Lucid is indispensable as it serves as a core library in Cardano, underpinning numerous protocols. This critical role emphasizes the urgency of consistent updates to ensure compatibility with evolving Cardano protocols, hard forks, and the dynamic technological landscape. Neglecting Lucid's maintenance not only jeopardizes the functionality of smart contracts but also impacts a multitude of protocols relying on it. Upholding Lucid's reliability is integral to sustaining the seamless operation of diverse applications across the Cardano blockchain.

[IMPACT] Please define the positive impact your project will have on the wider Cardano community.

Our proposed solution comprehensively tackles the multifaceted challenges faced by the Cardano ecosystem. First and foremost, the lack of maintenance of Lucid library poses a significant risk to the overall health of the ecosystem. By prioritizing consistent and proactive maintenance efforts, we aim to ensure the longevity and reliability of the core library, contributing to the overall stability of the Cardano ecosystem.

Inadequate support for the upcoming hard fork is a critical issue that could lead to compatibility issues and disruptions. Our strategy involves a meticulous upgrade process, aligning the library with the latest Cardano Multiplatform Library (CML) versions.

The growing backlog of GitHub issues in the original repository is a bottleneck that impedes progress for projects in Cardano.

Unmerged pull requests are indicative of a disjointed contribution process. We plan to streamline this by diligently reviewing and incorporating valid pull requests. This not only acknowledges the efforts of the community but also accelerates the implementation of valuable features and enhancements, contributing to the overall robustness of the Cardano ecosystem.

The scarcity of individuals proficient in maintaining the repository is a critical bottleneck that impedes the project's growth.

In summary, our proposed solution is a holistic approach that addresses maintenance, hard fork compatibility, GitHub issues, pull request management, and community development. The benefits are manifold – increased stability, seamless adaptation to protocol upgrades, faster issue resolution, enhanced features, and a resilient ecosystem that thrives on collaborative innovation. By implementing these measures, we envision a Cardano ecosystem that is not only robust and reliable but also adaptable to the evolving needs of its developer user base.

[CAPABILITY & FEASIBILITY] What is your capability to deliver your project with high levels of trust and accountability? How do you intend to validate if your approach is feasible?

Anastasia Labs has rapidly established itself as a leading development firm within the Cardano Ecosystem.

Our team consists of highly skilled developers who have made significant contributions to various community projects, including Lucid, Agora, Liqwid-Plutarch-Extra. Our developers have had experience developing and publishing end-to-end DApps including production projects like WingRiders. Our auditing clients include Wanchain, Lenfi, Encoins, FluidTokens, Spectrum Finance, and Atrium. In addition to our project involvement, our team has been actively engaged in the developer experience domain. We have actively participated in educational panels focused on DApp Security Practices and Design Patterns, and our members have served as co-chairs of the IOHK developer experience working group.

Furthermore, our collaboration with Emurgo Academy has been instrumental in educating aspiring developers, with our team playing an essential role in this endeavor. We have also recognized and recruited the most exceptional talents from the academy's classes.

We have developed software development kits (SDKs) that facilitate the integration of existing dApps with other systems through off-chain code. Our team has also designed various protocols, including bridges and staking systems, while also actively contributing to open-source smart contract languages and their associated standard libraries.

With broad range of expertise within the Cardano Ecosystem we are a highly capable and versatile development firm

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

Milestone 1: Enhancing Repository Collaboration

Review, fix, and merge PRs from the official repository

There are a number of outstanding PRs on the official lucid repo that have not been reviewed or merged because the repository is no longer maintained. We have been updating and maintaining our own public fork for sometime now. On our fork, we have reviewed and merged a number of PRs from both ourselves and external contributors; however, there is a backlog of PRs on the main repository that we did not have capacity for. For this milestone, we will review, fix and merge outstanding PRs from the main lucid repository to our maintained fork.

Deliverables:

  • List of Outstanding PRs: Compile a comprehensive list of all outstanding Pull Requests (PRs) on the official Lucid repository that have not been reviewed or merged.

  • Evaluation and Fixing: Assess the code changes proposed in each PR and identify any issues, conflicts, or improvements needed.

  • Updated Fork: Apply necessary fixes to ensure compatibility with the maintained fork and resolve any conflicts that may arise during the merging process.

  • Merged PRs: Actively review, test, and merge the identified PRs from the main Lucid repository into the maintained fork.

>Milestone 2: Augmenting Lucid's Utility Library Functions

Expand Lucid’s utility library with additional functions

Lucid is one of the most widely used off-chain frameworks in the ecosystem; however, due to lack of active development it is missing a number of utility and convenience functions. For instance, a common design pattern is to pass the index of an input, output or reference input in the transaction redeemer. Currently, to do this for an input in Lucid requires a lot of boilerplate, first sorting the inputs by their TxOutRef’s and then indexing them and then doing a first pass of balancing to determine if any change inputs need to be introduced which would require another pass over the inputs to reassign correct indices. This milestone covers the implementation and testing of such utility functions to Lucid.

Deliverables:

  • Identification of Missing Functions: Conduct a comprehensive analysis of the Lucid framework to identify gaps in utility and convenience functions that hinder efficient development.]

  • Function Design: Develop a design proposal outlining the new utility functions to be implemented, with a focus on simplifying common design patterns, such as passing indices in the transaction redeemer.

  • Implementation: Code and integrate the proposed utility functions into the Lucid framework to streamline tasks like sorting inputs by TxOutRef's, indexing, and balancing.

  • Testing Suite: Develop a robust testing suite to ensure the functionality, correctness, and efficiency of the newly implemented utility functions.

>Milestone 3: Documentation Refinement and Technical Specifications

Modify documentation for Lucid and create technical specifications for Conway support

Deliverables:

  • Modified Lucid Documentation:

  • Clear and concise documentation reflecting changes and improvements.

  • Comprehensive guidance for developers using Lucid.

  • Technical Specifications for Conway Support: A detailed document outlining the technical requirements and functionalities related to Conway support in Lucid.

  • A reference guide for developers implementing Conway functions using Lucid.

Intended Outcomes:

  • Enhanced clarity in Lucid usage through improved documentation.
  • Empowered developers with detailed specifications for seamlessly integrating Conway support.

>Milestone 4: Keeping Pace with Cardano Evolution

Sync the latest Cardano Multiplatform Library (CML) from the DCSpark repository

Upgrade Lucid CML with the latest Conway functions in preparation for the Chang Hard Fork

Deliverables:

  • Synced CML from DCSpark Repository:

  • Lucid updated to synchronize with the latest Cardano Multiplatform Library (CML) from the DCSpark repository.

  • Upgraded Lucid CML for Chang Hard Fork:

  • Lucid integrated with the latest Conway functions in anticipation of the Chang Hard Fork.

  • Ensured compatibility with the evolving Cardano protocol.

Intended Outcomes:

  • Lucid aligns seamlessly with the latest advancements in Cardano's CML
  • Preparedness for the upcoming Chang Hard Fork, minimizing disruptions and maintaining functionality.

>Testing and Optimization for SanchoNet Features

Test and polish SanchoNet features integrated with Lucid

Ensure seamless functionality post-upgrades and additions

Deliverables:

  • Rigorous testing of SanchoNet features integrated with Lucid.

  • Identification and resolution of any bugs or issues.

  • Polished SanchoNet Features:

  • Fine-tuning and optimization of SanchoNet features for optimal performance.

  • Ensured a smooth and user-friendly experience for developers using Lucid.

Intended Outcomes:

  • Verified functionality and reliability of SanchoNet features within Lucid.

  • An optimized and polished integration that enhances the overall user experience.

  • Seamless post-upgrade and addition functionality, ensuring Lucid's efficacy in diverse applications on the Cardano blockchain.

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

Compiler & Programming Language Research

Philip DiSarro

Philip has an MS in Compiler Development & Programming Language Theory. He was the lead smart contract architect of many features on WingRiders DEX. Philip has also made significant contributions to the Cardano developer ecosystem. As a co-chair of the IOHK developer experience working group he worked to identify and resolve pain points that DApp developers experience in Cardano, and had an integral role in getting Lucid & Plutus Simple Model included in the Plutus Pioneer Program. He has a vast wealth of experience in smart contract security and auditing on Cardano.

Philip is CEO and founder of Anastasia Labs and a senior Haskell developer on the XSY team, a consultant and lecturer for Emurgo.

Philip is responsible for introducing the new utility and convenience functions to Lucid and for assisting with general maintenance. Additionally, he will help create documentation for new features.

Functional Programming & TypeScript SDKs

Jonathan Rodriguez

Jonathan is a highly skilled smart contract developer specializing in Cardano, a blockchain technology that he is deeply passionate about.

His passion in smart contract development drives him to constantly polish his technical knowledge. In the pursuit of that knowledge he obtained the following certifications: Cardano Solution Architect, Cardano Developer Professional, and Associate Certificate.

With an extensive background in Haskell development, which is a critical language for Cardano, he possesses a thorough understanding of functional programming concepts.

His expertise extends to various aspects of the Cardano ecosystem, including the Cardano Toolchain, Transaction Structure, Plutus Smart Contracts, Native Tokens, DApp Connector, and other essential components.

Jonathan is well-versed in conducting use case analysis and tokenomics, as well as interfacing with decentralized storage, server APIs, and integrating databases.

He is knowledgeable in establishing robust CI/CD (Continuous Integration/Continuous Deployment) flows and integrating them into development processes. Additionally, he is skilled in conducting thorough unit testing to ensure the reliability and security of his smart contract solutions.

[BUDGET & COSTS] Please provide a cost breakdown of the proposed work and resources.

Four developers to maintain and actively develop Lucid for the next 12 months (and hopefully beyond).

This includes:

  • Development of new offchain utilities
  • Updating to support Chang Hard-Fork features.

3,125 ADA per developer per month.

Engineering hour cost: 150,000 ADA

Resources allocated for creating comprehensive documentation for new utility functions.

Costs associated with future updates, maintenance and bug fixes.

Documentation and library maintenance cost: 50,000 ADA

Total Estimated Cost: 200.000 ADA

[VALUE FOR MONEY] How does the cost of the project represent value for money for the Cardano ecosystem?

Lucid library is most used library for writing offchain code on Cardano. With the upcoming Chang hard fork it would break many features if not maintained.

We believe it is very important to keep it up to date and that it is a great value for money invested into maintance.

Community Reviews (1)

Comments

Monthly Reports

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