Official cardano wallets are limited in the features and usefulness they provide. Our wallet will support plugins with functions people need
To create a wallet with support for plug-ins developed and maintained by the community. Need a feature? Install a plug-in or create one.
This is the total amount allocated to ENVLP - a wallet with plug-ins.
OVERVIEW
As part of our e-commerce integration work (https://cardano.ideascale.com/a/dtd/Free-Commerce-sell-online-with-ADA/322288-48088) we started working on a wallet for cardano to work around some limitations on existing wallets (daedalus, yoroi).
VALUE PROPOSITION
To cater for every conceivable user need when using crypto to interact with the external world.
Our goal
We want to enable developers and third party service providers to build plug-ins that interact with your cardano wallet: transactions that can feed accounting systems, exchanges that could move funds into your wallet and stake them, and many other functions that no single crypto wallet currently has.
To enable this, we propose the creation of a plug-in oriented architecture for a wallet that allows any developer in the community to create their own functionalities into plugins that could be shared with all users of this wallet.
Here is a video explaining the plug-in concept:
https://youtu.be/cUyfRMnhrAo?t=1571
Examples
Here are some of the functionalities that the community could create plug-ins for:
And so much more. We want this to be THE wallet of choice for everyone.
WHY NOT DAPPS?
Plug-ins add user interface features and read information from the wallet and external service providers in order to implement a certain function. They can't be dApps but can certainly help the process to integrate dApps that could work straight from your wallet without you having to visit a single website.
Some of the major differences are:
In short, plug-ins allow the wallet to support multiple functionalities that won't be available through dApps. They can enable an easy gateway between the traditional systems - financial or otherwise - and your crypto.
ACTIVITY BREAKDOWN
The core wallet will be built anyway to interact with the cardano-wallet back-end (developed by IOG) and to support volume transactions for e-commerce operations (as detailed on our other project: https://cardano.ideascale.com/a/dtd/Free-Commerce-sell-online-with-ADA/322288-48088)) and work as a regular wallet such as daedalus.
For this project, we are looking to fund the work required to add support for plugins:
Also please submit your input with ideas for plugin-ins and things you'd like to see in the wallet by default. I'll adjust the funding requested depending on what you'd like to see (or not) as part of this first round.
EXPECTATIONS
This project will be my full time job for the foreseeable future
You can check our progress on the github repositories linked above.
I'll also submit video updates every time any relevant development is complete.
MILESTONES
(Month 1) - Have a working wallet with the basic features existing wallets have: creating/restoring wallets, view and receive payments, list and delegate to stake pools
(Month 2) - Define the plug-in interfaces and mechanisms to load these extensions in the wallet. Refactor wallet to have its capabilities (transaction listing, payments, wallet restoration, etc) running as plug-ins themselves. Document how to write and deploy wallet extensions
(Month 3) - Release candidate of the ENVLP wallet with plugin-in capabilities.
(Month 4) - Introduce plug-in update features, to allow easy, automated detection of new versions of plug-ins released by the community
(Month 5 onward) - Release final version, work on bug fixing, enhancements and general software maintenance as required.
IP/Copyright
The entire source code of this project will be available on github under the Apache V2.0 license.
FUTURE PLANS
Once plug-in support is available we expect that developers in the community begin creating their plug-ins and share them independently of our input. The idea is that the wallet becomes an ecosystem of its own, where new features are not dependent on wallet updates.
RISK
I'm counting on earning additional funding from fees collected by the SHOP stake pool, especially to keep the project going after the first year.
I'm trying to minimize risk by already coding an initial prototype version that interacts with the cardano-wallet back-end
Ourselves or independent plug-in developers are not responsible for potential financial loss caused by bugs on the software.
Plug-ins could be created with malicious intent. As none of the software will have an "owner", the community will be responsible for vetting and informing other users about any fraudulent activity.
Software development with bleeding edge technology can come with surprises that usually take a long time to overcome. The work to interact with the cardano-wallet backend is ongoing and the difficulty in implementing some feature - such as delegation for example - may prove to be much more time consuming than anticipated.
METRICS
Code activity can be measured from the commits on the following github project:
https://github.com/uniVocity/free-commerce
It can already be compiled and deployed by anyone interested in seeing how the software is working at any point during development. We will provide step by step documentation on how to build, run and test everything independently.
ACTIVITY BREAKDOWN AND EXPECTED COST:
Assuming hourly rate of 50 USD/hour
Optimistic estimates
- Development activities:
(A) Determine plug-in interfaces (3 to 5 days): classes and methods developers must implement in their plug-ins to enable their extensions to be recongnized and loaded into the wallet.
(B) Implementation or plug-in loading (21 to 28 days): load/unload plugins, display extension elements in the user interface (menus, context pop-up menus, dialogs, etc), integrate with local database and processes, allow plug-ins to start/stop their own secondary processes if they need (such cardano-graph-ql for example, and even microsoft access).
(C) Provide a localization framework (5 to 7 days): required to allow all plug-ins and the wallet itself to be translated according to any regional language and currency/date formats. Localization can be provided independently by the community so the plug-in developers won't have to worry about translating their extensions themselves.
(D) Implement plug-in publishing, rating and self-updating capabilities (14 to 21 days): provide plug-in repositories which allows users to search, download, upgrade and rate plugin-ins.
(E) Documentation and tutorials (3 to 4 days): document source code and publish tutorials on how to create plug-ins. This is documentation for other developers to refer to when trying to understand the software and write code for it to build plug-ins. For examples of documentation we've already written for other software, refer to these:
(F) Implementation default plugins (5 to 8 days): these will come pre-installed with the wallet and can be used as examples for developers. These functionalities will be refactored out of the initial wallet version built for our e-commerce integration work (https://cardano.ideascale.com/a/dtd/Free-Commerce-sell-online-with-ADA/322288-48088) which won't come with support for plug-ins initially.
Estimates account for testing and development releases.
DEVELOPMENT TOTALS:
* min: 3+21+5+14+3+5 = 51 days * 8 hours/day = 408 hours * 50 USD/hour = 20400 USD one-off
* max: 5+28+7+21+4+8 = 73 days * 8 hours/day = 584 hours * 50 USD/hour = 29200 USD one-off
- Support activities (around 15 to 20 hours per month):
(A) bug fixing and feature requests
(B) provide assistance for developers who want to buid their own plug-ins
(C) plugn-in repository server monitoring and maintenance
SUPPORT TOTALS:
* min: 15 hours * 3 months = 45 hours * 50 USD/hour = 2250 USD
* max: 20 hours * 3 months = 60 hours * 50 USD/hour = 3000 USD
- Running costs:
* One server to act as a plug-in repository developers can use to plublish their plug-ins, and users can search and download them from (80 USD/month)
Running costs may vary depending on demand, but we don't expect it to be extremely active.
SERVER TOTALS:
* 80 USD/month * 12 months = 960 USD/year
PROJECT TOTALS (first year, assuming 1 ADA = 0.08 USD):
* min: 20400 + 2250 + 960 = 23610 USD = 295125 ADA
* max: 29200 + 3000 + 960 = 33160 USD = 414500 ADA
Meet in the middle project price: (295125 + 414500) / 2 = 354812 ADA
Thank you for your support!
35481220+ years of software development experience, masters degree in computer science and a creator of multiple open-source projects.