not approved

C64 Modular Wallet

$23,860.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Addresses Challenge
Feasibility
Auditability
Problem:

<p>A wallet that provides a sovereign, customized and simplified developers experience by supporting new use cases in the form of addons.</p>

Yes Votes:
₳ 47,257,732
No Votes:
₳ 58,995,815
Votes Cast:
348

Équipe

  • download
  • download
  • download
  • download
  • download
  • download
  • download
  • download
  • download
  • download
  • download
  • download
  • download
  • download

Detailed Plan

C64 Modular Wallet

<u>Problem statement :</u>

There is a lack of a light wallet in the form of a browser extension that provides a sovereign, customized and simplified interaction with the protocol, facilitating developers experience by supporting different networks, unifying work environments, customizing endpoints and allowing to test and add new use cases in the form of plugins directly from the wallet.

<u>Describe your solution to the problem</u>

Development of a community cross-browser light wallet with a popup format that supports switching networks and unifying all of them within the same tool from the same account, in addition, being able to choose your own trusted endpoints.

Design and implement a modular architecture that facilitates the addition of new use cases in the form of plugins, a way to extend the basic functionality of wallets.

Also, adopt the Connector standard from dcSpark for interaction with web sites[0].

Detailed plan

<u>About C64:</u>

The C64 project started in April 2021 with a fund5 proposal[1] for a purpose-built desktop wallet to mint signed NFTs, stored 100% on the blockchain. Allowing anyone to create, verify and link identities to digital assets, such as works of art with the artists.

The development started as a cross-desktop wallet[2], with the imminent arrival of smart contracts the project evolved towards the creation of a wallet to be used from the browser to facilitate interaction with websites.

In this way, the wallet improves the user experience, gains versatility and, besides being able to mine NFTs, we can add new capabilities by adapting to the advances and new functionalities brought by the Alonzo era and future ones.

<u>From Minter to Modular Wallet</u>

Thus, we decided to go a step further and expand the vision and capabilities of the wallet, adapting the initial proposal to a modular wallet, where, starting from a basic wallet functionality with a friendly extension user experience, we will establish new functionalities such as support for switching between different networks, the possibility of choosing your trusted endpoints, and being able to add specific use cases in the form of addons, being the 'C64 Minter' the first to be included.

<u>Merging funds</u>

The funds from the fund5 earmarked for the implementation of the wallet will be used in this proposal for the implementation of the more general-purpose wallet(reducing costs on this proposal). The remaining is being used to develop the main objective of the fund5 proposal, the NFTs Minter use case. More details are provided in the "Use of Funds'' section.

In this way, we expand the fund5 proposal while still covering all the goals proposed in it.

<u>Adoption:</u>

The light wallet type, the user-friendly 'popup' format, and the quick installation will make it easy for users to adopt it.

The capacity to easily add new use cases/plugins and the ability to customize endpoints will attract more experienced users.

The testnet support and dapps connector integration will appeal for developers.

phase 0 / 2 months - Base Wallet & Web development:

A. Start developing the light wallet as a browser extension.

1.Adapt Auro Wallet[3]. Migrate Javascript to Typescript.

2.In-memory state for backend side.

3.Redux for state management in frontend views.

4.Cross-browser support. Chrome, Brave, Edge and Firefox(tentative).

5.LocalStorage for wallet configuration.

6.IndexedDb[4] for data persistence and cache.

7.Multi-lingual support.

8.Switch-network support for mainnet and testnet from the same account. Use Rxjs to manage events arrays.

9.Default and customized endpoints for each network, avoiding server saturation.

10.PIN code security layer.

B. Start landing pages and social media profiles.

  1. Reactjs.

2.Multi-lingual support.

3.Server configuration and web deployment. Nginx.

4.Setup domain/web certificate with Let's Encrypt[5] & certbot.

5.Twitter account.

phase 1 / 3 months - Basic Features - Modular Architecture and Alonzo support:

A. Continue developing the light wallet.

1.Basic account features (Byron-Shelley).

1.1 Creation, restoration, modification and deletion accounts.

1.2 Send (+metadata), receive and show transactions (+metadata+NFTs).

1.3 Choose a stake pool of your choice and delegate.

2.Design and implement a modular architecture as plugins based.

3.Integrate the first plugin: C64 Minter(signed & 100% on-chain), already funded from the previous proposal, fund5[1].

4.Native tokens support. Send, receive and show tokens. Integrate Alonzo Rust SDK from dcSpark - fund5[6].

5.Integrate web connector for webapps interaction, developed by dcSpark - fund5[0].

phase 2 / 1 months- Working Product:

A. Continue developing the light wallet.

  1. CI-CD workflow for production environment.

  2. Multi-lingual translations. Tentatives: English, Spanish, French, Hindi, Chinese.

  3. Setup Dandelion default endpoints, for testnet and mainnet support. [7].

Server requirements:

Testnet: 4vCPU 8Gb 20Gb.

Mainnet: 24vCPU 24GB 42Gb.

B. Continue landing pages and social media profiles.

1.Wallet tutorials, 'How to install', 'How to use'.

2.Web graphics, animations and brand/logo.

3.Marketing campaign.

C. Community:

1.Open public channels.

2.Start 'on-chain NFT' incentivized challenge.

D. Sustainability:

1.Sustainability plan for development and maintenance of the wallet. As an addition and alternative to the Catalyst program.

<u>Without the funds from fund6, we cannot guarantee that the next goals will be implemented:</u>

Phase 0:

A (8,9)

B (1,2,3,4)

Phase 1:

A (1.2, 1.3, 4, 5)

Phase 2:

A (1, 2, 3)

B (1, 2, 3)

C (1)

D (1)

All other goals will continue to be implemented to meet the requirements for the fund5 proposal[0].

Timeline:

We're planning to have all the above phases completed in 6 months, since the funds are received.

The team:

Caso as Project Lead. Full-Stack Developer. Cardano Ambassador. Stake Pool Operator. <https://www.linkedin.com/in/jaime-caso/>

Open position for at least one more Full-Stack Developer who meets the development requirements.

Roberto Morano as Advisor and Collaborator. ex-Emurgo DevOps lead. Gimbalabs co-founder. Dandelion operator/lead. <https://www.linkedin.com/in/rcmorano/>

Vicente as Advisor ex-Emurgo Yoroi-mobile, R&D Engineer. <https://www.linkedin.com/in/vicente-almonacid/>

BLOCKING PROBLEM AND EVIDENCES:

Interaction with websites through the wallet extension will depend on the availability of dcSpark's implementation of the proposed 'Cardano Connector' standard, funded in fund5[0]

Goals affected by this blocking problem:

Phase 1:

A (5)

The interaction with smart contracts through the extension wallet will depend on the availability of the PAB (Plutus Application Backend) implementation by the IOHK and then by dcSpark[5] to be run from the browser. The dcSpark Dapps connector is not guaranteed yet, but it is tentative.

Goals affected by this blocking problem:

There are no affected goals in the plans for this proposal. It will affect future plans for interaction with webs and dapps.

Future(not covered in this proposal, tentative for next funds):

1.Restore accounts from Yoroi and Daedalus.

2.Consolidate funds in the same address.

3.Integrate Dapp Connector for smart contracts interaction from IOHK adapted by dcSpark proposal [5].

4.Trezor, Ledger, Yubikey support.

5.Plugins repository(audited).

6.+Use cases as plugins.

7.Staking portafolios.

8.Code audit.

Use of Funds:

Extension wallet: Full Stack Developers 40$/h*352h = 14 080 USD

The first month of development will be financed with the 58% of the funds obtained in the previous fund5 proposal (merging and optimizing costs). Funds: 3 520 USD , Total amount: 17 600 USD

Earmarking the remaining funds 2 480 USD to the 'C64 Minter (on-chain+identity)' use case - fund5.

Landing page: Front End Developers 30$/h*44h = 1320 USD

Server config & wallet CI-CD: Sys admin 40$/h*69h = 2760 USD

Server costs & other technical infrastructure 1 year, website and endpoints = 1500 USD

Multi-lingual: Translators 160$ + 40$ 1 revision = 600 USD

Graphics: Designer 1 600 USD

Marketing campaigns = 2 000 USD

-> Total: 23 860 USD

Demo:

<https://vimeo.com/585777738>

References:

[0] https://cardano.ideascale.com/a/dtd/Cardano-Connector-Metamask-like/352482-48088

[1] <https://cardano.ideascale.com/a/dtd/C64-Asset-Minter-on-chain+identity/352588-48088>

[2] <https://github.com/jimcase/C64-Minter>

[3] <https://github.com/bitcat365/auro-wallet-browser-extension>

[4] https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API

[5] <https://letsencrypt.org/>

[6] <https://cardano.ideascale.com/a/dtd/Cardano-Rust-SDK-update-for-Alonzo/352480-48088>

[7] <https://gitlab.com/gimbalabs/dandelion>

Avis des conseillers communautaires (1)

Comments

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3 min 24 s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4 min 3 s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3 min 48 s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2 min 16 s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3 min 14 s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3 min 19 s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4 min 59 s
    Darlington Kofa
0:00
/
~0:00