Last updated 3 months ago
Testing Cardano dApps utilizing CIP-30 is a tedious process because of the need to interact with browser wallets. Wallet interfaces are hard to mock, and reproducing wallet state is nearly impossible.
We propose creating a light wallet targeted at developers, testers and power users. It will provide unique features missing in mainstream wallets.
This is the total amount allocated to MLabs - Browser-based Wallet for Developers & Testers. 5 out of 5 milestones are completed.
1/5
Project setup
Cost: ₳ 37,660
Delivery: Month 1 - Nov 2023
2/5
Implementation of CIP-30 interface
Cost: ₳ 50,214
Delivery: Month 2 - Dec 2023
3/5
Extending the functionality
Cost: ₳ 50,214
Delivery: Month 3 - Jan 2024
4/5
Debugging, Plutip integration.
Cost: ₳ 50,214
Delivery: Month 4 - Feb 2024
5/5
Release and addressing user feedback
Cost: ₳ 62,768
Delivery: Month 8 - Jun 2024
Vladimir Kalnitsky (@klntsky)
Dzmitry Shuiski
No dependencies.
Project will be fully open source.
Problem
Testing Cardano web apps utilizing light wallets presents unique challenges due to the complexity of CIP-30 wallet interfaces, the difficulties in automating or mocking them, and the lack of wallet state reproducibility.
For example:
Solution
The proposed solution is to create a light wallet targeted at developers and testers, that will provide the following features:
For the implementation, we can use cardano-transaction-library (CTL for short, https://github.com/Plutonomicon/cardano-transaction-lib/) - a tool that has been developed in the past thanks to Cardano Catalyst funds 8 and 9. CTL already has most of the components needed to create a light wallet, including:
The features above can be built on top of existing CTL functionality.
The main missing parts are, sorted by descending complexity:
Market
The target audience of this project consists of:
Challenge statement: Development Ecosystem - The Evolution. How do we equip and support developers with tools and working infrastructure? How do we make Cardano their first choice when it comes to building dApps, innovating and collaborating?
The proposal, if implemented, will provide a useful testing tool for dApp developers, which may influence their preference towards Cardano.
Success can be measured by the number of users. Since the potential user audience is tiny (but very impactful!) in comparison to production wallets, we can target just 1000+ installs and consider it a success.
MLabs maintains a social presence on Twitter and in the Plutonomicon Discord, where updates could be posted. Additionally, the release could be announced on IOG technical Discord.
MLabs has proven itself as a company employing dozens of Haskell and PureScript software developers and delivering a number of Catalyst-funded projects in the past.
The main goal is to deliver a working WebExtension with all of the proposed features. The feasibility of our approach to achieve the goal will be evaluated by project managers and technical leadership of the project, based on time and budget constraints.
1st month
2nd month
3rd month
4th month
5th month
6th-8th months
Months 1-4
The deliverable at each stage is a repository containing the source code of a WebExtension implementing requested features. The intended outcome for each stage is to be able for us to proceed with the following milestone.
Months 5-6
The deliverable is a public release of a WebExtension available for download from Chrome Web Store and Firefox Browser Addons, implementing all the features of the previous milestones. The intended outcome is to attract attention to the project and convince the users that we provide a useful tool.
Subtotal: 555 hours @95/hour = $52,725 USD
Total (@ rate $0.21 USD / ADA): 251070 ADA
**In the interest of full transparency, please note we have applied a conservative USD/ADA exchange rate in pricing this proposal. This is to ensure our operations remain stable regardless of market conditions. Although we firmly believe the future of Cardano is bright, we recognize the price of ADA and all cryptocurrencies is inherently volatile. Our financial obligations are denominated in fiat. Most importantly, this includes the salary of our engineers whose hard work makes projects like this possible.
In the unlikely scenario of severe negative price movement beyond our forecasted rate, it is possible that MLabs may need to temporarily suspend work on this proposal until the market recovers. Rest assured, this decision would be made solely to protect our business's long-term viability and never taken lightly.
We appreciate your understanding and support, and we are excited to see what we can achieve together.
Making dApp developers more productive would save costs for the teams and therefore may positively affect the number of successful Cardano projects.
NB: Monthly reporting was deprecated from January 2024 and replaced fully by the Milestones Program framework. Learn more here
MLabs
MLabs has quickly become one of the premier development firms in the Cardano Ecosystem. We are an IOG Plutus Partner and work regularly with IOG to develop the Cardano blockchain and ecosystem. Our team is composed of talented developers who have helped build community projects such as:
Through our work with early-stage projects, we have one of the largest groups of Haskell/Plutus developers in the community.
Website: https://mlabs.city/
The team
Vladimir Kalnitsky - Tech leadership
Vladimir is a software developer with a number of contributions to the PureScript ecosystem and solid experience with Haskell. During his undergraduate years, Vladimir focused on functional programming and type theory. Vladimir is more of a 'hacker' than a scientist, but he still values formal reasoning about code and well-founded software development practices.
Dzmitry Shuiski - PureScript Development
Dzmitry is an experienced software engineer, currently developing solutions using functional programming techniques, mostly using PureScript and Haskell. Coming from a background in iOS App Development, he is well-versed in various aspects of developing robust and user-centric systems. Dzmitry has made considerable contributions to CTL in the past and is now primarily focused on Cardano dApp development. He is currently pursuing a degree in Software Engineering and Management at the Graz University of Technology to deepen his knowledge in more fundamental disciplines.