over budget

GameChanger: Most Wanted Features ❤

$12,000.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Addresses Challenge
Feasibility
Auditability
Solution

Help us provide dedicated support to our users. DApp API and UI improvements, keys persistance UX, stake multi delegation, and much more

Problem:

Devs and users frequently demand features and bugfixes. As a pure community driven Cardano wallet (no VC/token launch) we need some support

Yes Votes:
₳ 58,756,665
No Votes:
₳ 10,208,252
Votes Cast:
270

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

[IMPACT]

Overview:

New development and bug fixes will be done in order to cover most wanted and needed functionalities as requested by our user base, most of them being our growing developer community.

Features:

  • Refactor wallet's core to switch the private keys management from the storeless model (like AdaLite) to a storefull spending password model (like Yoroi) mitigating mnemonic exposure on keyboard and screen. Some PoCs has been developed here but this requires much more development efforts.
  • Rewrite the internal wallet API for better working with this core refactor while gaining more compatibility with upcoming hardware wallet, smart contract support and other complex DApp connector requirements. (See <https://cardano.ideascale.com/a/dtd/GameChanger-HW-support/383546-48088> and https://cardano.ideascale.com/a/dtd/GameChanger-smart-contract-support/383537-48088))
  • Staking: delegation and reward withdrawal. Playground access to this functions. Multi-delegation support
  • DApp connector: bypassing the DApp Cart at will by insta-executing the request using the spending password of the storefull model.
  • UX: New creation / importing / spending UI flow. Mnemonic input and rendering mitigation. Staking UI, delegation, rewards. Better wizzard UI, more recognizable buttons and steps on Smart Send and NFT Creator interfaces. Relocate donation buttons.
  • Playground IDE Demos: add staking and adapt demos to the new API changes if needed.
  • CIP-30 transaction signing-like solution adapted to our JSON based URL dapp connector approach. Optional open source tooling development if required.

Bug fixes:

  • <s>Upgrade to cardano-serialization-lib to 9.1.2 or 10.x.x to fix some bugs related to heavily token-populated UTXOs with small ADA values preventing running CNFTs or token drops at scale on single transactions (Thanks ALDEA for spotting it on your drop).</s> Recently done.
  • Normalize some internal data serialization/encoding to fix related bugs, for example with some asset names.
  • Mitigate randomly truncated URLs connections on some browsers with retries
  • Address endpoint bug that sometimes is not returning the current wallet address
  • Improve current error messages. Provide alternative options for IPFS pinning to mitigate third party service downtime errors. We have taken care of this downtimes by manually pinning NFTs in such cases.

Generic use cases that will benefit from this:

  • Once implemented, the storefull model will allow users to mitigate mnemonics exposure through keyboard or rendered on screen, driving more liquidity between wallets and at the end helping the developer ecosystem forming around the wallet to benefit from this metrics. We started with an Adalite like UX approach but is about time to finally move on to what users desire most.

  • With this spending password flow, all dapps integratig GC will benefit from a better UX for their users, allowing bypassing the Dapp Cart at will, for a faster, instant, and password protected transaction execution.

  • With the core rewrite, effort that will be made in conjunction with HW support implementation, users will feel more secure don't having to rely exclusively on mnemonic flow.

  • Dapp connector API improvements, with staking API exposure, will provide our developers with a more rich set of features to build Cardano Dapps with the ease of low-code scripting (JSON).

  • As always, new demos listed on our integrated IDE covering these new features will help onboard developers at the speed of a button-click.

  • The more features we integrate into Playground IDE (that means enrich our JSON based dapp connector API), we will gain more usage as an alernative web version of cardano-wallet-cli.

  • Besides legacy features like opening testnet and mainnet wallets in read-only mode to debug service wallets for example, recent upgrades allow developers to import/export signed cbor hex transaction files, parse transaction cbor structure and review the most in dept Cardano node rejection errors fully in-wallet. Also full transaction submit state management has been put in hands of our users as well as internal UTXO management, all this in a pure graphical/gamified UI. The power of <s>viewing</s> touching the UTXO model plus the ability to craft transactions with JSON is priceless for a junior developer to be onboarded on Cardano.

> We need extra time and effort to develop this overly friendly UI and API, this different wallet concept that self construct complex transactions and manages UTXOs instead of delegating those powers to external dapps, but we do all of this because we care for Cardano users, students and developers as well.

Use cases and customers:

All this backlog has been constructed after obtaining user feedback on real life use cases and requirements. Some examples are:

  • Our "GameChangers": users, supporters, our Gimbalabs, ALDEA friends, and many more. Gimbalabs project based learning spaces that are using GCWallet for didactic purposes.
  • Gimbalabs products such as Password Chaos integrating "Pay with GC" buttons. Many other websites integrating this simple URL dapp connections for payment requests.
  • M2Tec Hardware - Maarten Menheere's Paypad device, amazing first ever hardware integration with our wallet that blowed our minds; and current Cardano Totem development.
  • ALDEA CNFT drop. 500 unique NFTs minted with GameChanger Wallet. Other big drops made with the wallet.
  • SPOs running loyal delegator reward drops using Playground IDE scripting or Smart Send
  • CNFT community using our built in NFT Creator to create collections, make decentralized drops on single transactions,earn some referral income and care for a pure self-sovereign minting solution - Thanks for inmortalizing your artworks with us!
  • Cardano Sevilla Summit 2021 website, first IDNFT-based auth and decentra-minting CNFT website using GC
  • Project Catapult, first full featured dapp using GameChanger connector and IDNFT support
  • AIM - developing to turn on chain the CA/VCA Catalyst UX, using GCWallet

It's important to clarify that unlike other wallets in the ecosystem, GameChanger Wallet offer users the ability to combine several Cardano features at once into single transactions since day one, for sustainable blockchain usage and reduced fees. The wallet builds this complex low level transactions, not the dapps. We take the hard work to allow dapp builders focus on building faster and easily they projects and to protect user wallets against external dapp ability to generate transactions and incur in unproductive anti-concurrency UTXO management. Sometimes we have been referred as an easier (low-code and automated) cardano-wallet-cli web alternative.

Multi-output sending with multi-asset support for each of this outputs, plus native asset minting plus metadata, all at once and at users hands through SmartSend and NFT Creator UIs, the Playground (our integrated IDE) and the dapp connector. We have a more complex codebase in order to combine all the protocol features in such a free and creative way for our users. This is why our development efforts are not trivial, and every single decission we make, affects the overall project in complex ways.

[FEASIBILITY]

Roadmap:

4 months of work, depending on other proposals interrelated to this one, deliverables will be finished earlier.

Unless upcoming use cases lead us to prioritize something differently, we will address the backlog this way:

<u>1st month</u>:

  • Revise our social media in search for unspotted user feedback and enrich this backlog further (if posible) under this same budget

  • research, PoCs, and technical planning

  • core development, upgrade of libs and corresponding storeless code adaptation to it

  • core storefull persistance methods, wallet provider classes. WalletManager class.

  • internal API refactoring for using any kind of known wallet provider

<u>2nd month</u>:

  • Finalize classes and methods.

  • Start integrating wallet provider classes into existing codebase

  • basic adaptation of UI for the spending password flow, and wallet exports, state management. Connect existing UI with WalletManager class.

  • internal API refactoring for using any kind of known wallet provider. Covering special features such as minting , metadata, staking and possibly smart contracts depending on other proposal timings.

  • new features exposure on external API for Playground IDE and DApp connector .

<u>3rd month</u>:

  • Finalizing UI adaptation to the new flow,

  • better covering switching between wallets, app state adjustments

  • fixing address endpoint bug, and other related stuff.

  • Combining all together with other new features being developed in paralel from other proposals.

<u>4th month:</u>

  • bug fixes after heavy development phase

  • addressing unspotted feedback at the moment of writting the backlog

  • covering new requested features that fall inside budget

<u>Current wallet state / key features:</u>

  • Light-client, non-custodial, fully responsive progresive web app (PWA) wallet, ready to be used in any device without installing. Originally developed on an emerging country, we know that is hard to make users install applications on their phones and even computers when they sometimes won't have storage left or an adecuate and clean environment to install executables.

  • Mainnet, and Testnet wallet as well to allow developers and students to test without spending real value. Multiasset (tAda, tokens, NFTs and IDNFT) testnet airdrop at a button-click to onboard new users to Cardano capabilities.

  • We're the first deeply gamified wallet in the Cardano ecosystem, where your balance becomes like a game inventory and help move your assets (as coloured cards) as if they were tangible objects, allowing you to make from the simplest transaction to even a multi-asset, or multi-output transaction with the same intuitive interface. We're truly unleashing Cardano's potential by allowing anybody, even newcomers to interact even graphically with the most advanced features of the ecosystem, breaking with more than a decade of inherited UI trends that we think are obsolete against Cardano nature.

  • No more manually settings for fees and minimum ADA values, the wallet calculates all this for you. Sending a single token has never been easier, just pick the asset you want to send and the wallet adjusts the rest.

  • Native NFT, IDNFTs and tokens support with visual representation. Token avatars helps you identify same minting policies to quickly discover fake tokens and visually respect NFTs collection similarities. Token registry verification check.

  • Strict audit stage for any transaction sending request, letting the user to review their actions prior sending.

  • Builtin NFT Creator, drag and drop any file type, (not just images) to mint a single NFT or even a profesional collection in an automated way. Make NFT drops with the same gamified UI with final review stage, harnesing the power of multi-asset, multi-output single transactions and self sovereign decentralized NFT minting at end users hands.

  • URL-based dApp connector, allowing social networks, blogging sites, landing pages and even emails and e-messaging to carry payment links, donation buttons, metadata, tokens and NFT minting links on Cardano Blockchain. We plan to cover smart contracts and other features soon so please stay tunned. Here is a simple "minter tweet" to try this out: <https://twitter.com/GameChangerOk/status/1433861451618426880?s=20>

  • Builtin Playground (IDE): dApp connector editor and HTML and URL generator. GameChanger Script editor, a low-code JSON-based dApp connector scheme that already has been succesfully coded by non-developers proving that to help developers focus on building, we must simplify our coding languages and tools. Users can start coding this scripts by editing all the demos already integrated in the editor. Implement payments, NFT drops and complex transactions in a couple of minutes ending up with a ready to use autogenerated HTML dynamic dApp integration or a static copy-and-paste URL.

  • (e)UTXO model visually exposed, ideally for devs and students to audit and learn how Cardano works. Full control over wallet internal UTXOs through a graphical interface. This plus Playground features including coin selection and change optimizer plugins materializes our commitment to students and developers.

  • Advanced full control over transaction submit status to adapt to current network congestions and to empower developers with a rich toolset to develop over Cardano. Retry and abort features. Import, export and JSON parser of signed cbor mainnet and testnet transactions fully compatible with cardano-wallet-cli transaction file format.

  • Code based on Emurgo's cardano-serialization-lib, the core of Yoroi Wallet.

  • Private key isolation inside Web Workers, read-only mode to "debug" or "explore" any wallet address, and much more.

  • Open source community driven API backend, using IOHK's cardano-graphql and relying on Dandelion APIs, whom infrastructure efforts has allowed us to put our wallet online because we can't afford our own infrastructure yet as we have been supporting this development with our own savings and the required cloud hosting is very expensive in our country. Because we lack fair infrastructure capabilities and we are a very small team we are working closed source for now looking to reach sustainability first.

1st month:

  • 1 Full-Stack part time Senior Engineers ($1500 )

2nd month:

  • 1 Full-Stack full time Senior Engineers ($3000 )
  • 1 Full-Stack part time Senior Engineers ($1500 )

3rd month:

  • 1 Full-Stack part time Senior Engineers ($1500 )
  • 1 Full-Stack part time Senior Engineers ($1500 )

4rd month:

  • 1 Full-Stack part time Senior Engineers ($1500 )
  • 1 Full-Stack part time Senior Engineers ($1500 )

Total: $12000 ($1500 x 4 months x 2 devs= 12000$) for a 4 months period

No other costs involved as mainly what this proposal is requesting are funds to pay developer efforts over a minimum time of 4 months. 2nd month will be concentrating more developer hours.

Developers at required positions will be team members alternating depending on availability and fullstack skills. External developer support can be hired in case of unsuficient or unexpected loss of team member availability.

Adriano Fiorenza is Entrepreneur & Senior Full Stack Developer with 10+ years of experience in web development and IoT. Founder and the Lead Developer behind GameChanger Wallet, participated in 1st generation Plutus Pioneer Program and is currently contributing as Core Team member at Gimbalabs <https://gimbalabs.com>

His Linkedin profile can be found at <https://ar.linkedin.com/in/adriano-fiorenza>

Javier Ribó, Technical manager working in the flight industry and for the past years has successfully built and scaled different projects.Also worked for more than 7 years in the Hosting & Cloud industry. Currently going through the "Emurgo Developer course" Batch 52 & contributing to GameChanger Wallet as Senior Developer. Soon working at IOHK, on the Atala Prism Team.

His Linkedin profile can be found at <https://www.linkedin.com/in/index>

Roberto C. Morano is a systems integrator and DevOps advocate with over 15 years of experience. Ex-Emurgo DevOps Lead. Gimbalabs Co-Founder. Dandelion Founder and Operator. GameChanger advisor. Operator of Peace Stakepool.

His Linkedin profile can be found at <https://www.linkedin.com/in/rcmorano/>

Matías Falcone is a Senior Tech Lead and Backend Developer with 12+ years of experience in IT development and production support in the Banking Industry. He has experience working in different blockchains such as Ethereum, Polygon, Harmony, IoTeX, BSC and Algorand. Founder Member of ALDEA DAO and Operator of Falcon Stakepool.

His Linkedin profile can be found at <https://www.linkedin.com/in/Matias-Falcone/>

Deryck Lance is an Entrepreneur with 18 years experience in the insurance and risk industry, Founder of Quasar Risk Advisors, an independent insurance brokerage and Gig Guard, an insurtech engineering studio specializing in the design of embedded insurance for platform businesses. His journey into blockchain began working with Etherisc, a parametric based smart contract risk protocol in 2017.

His Linkedin profile can be found at <https://www.linkedin.com/in/deryck-lance-9405898/>

Usefull links:

<u>4 months:</u>

increase in positive feedback from users asking this support in social media

by staying up-to-date with user requests, feedback response times should decrease

<u>6 months:</u>

increase in wallet integrations using the improved dapp connector

increase in developers integrating/developing with the wallet (with Cardano)

increase in new wallets created

increase in dapps executed (transactions) using GC Wallet

Social media feedback and interactions as well as integrating websites/dapps can be tracked and counted

Dapp conector triggered transactions can be counted as well to provide metrics in both networks as testnet ones can be valuable to track developer related activity.

Full successfull results are expected at the end of the 6th month to give time to our community to start using the new features. From a technicall standpoint, developer success would imply finalizing on time all the roadmap, at the end of the 4th month.

This proposal is technically a proper codebase that will be complementing other past funded proposals as well as the sum of other critical updates to existing product. It represents the final missing piece to reach our first fully featured release milestone.

Some of the features we are hoping to produce here on this main development effort were proposed already in 2 other previously unfunded proposals, so this is our third attempt:

<u>Unfunded:</u>

F6: GameChanger: The onboarding wallet (rating 4.25)

<https://cardano.ideascale.com/c/idea/367709>

F7: GameChanger: Most required features (rating 3.88)

<https://cardano.ideascale.com/c/idea/383553>

Part of the code produced here will be a proper ground base for this other two funded proposals:

<u>Funded:</u>

F7: GameChanger: Ledger HW support (rating 5.0)

<https://cardano.ideascale.com/a/dtd/383546-48088>

F7:GameChanger: Smart Contract Support (rating 4.77)

<https://cardano.ideascale.com/a/dtd/383537-48088>

(Opinion: thanks for including this new section on Ideascale! Much needed!)

SDG Rating

SDG goals:

Goal 9. Build resilient infrastructure, promote inclusive and sustainable industrialization and foster innovation

SDG subgoals:

9.a Facilitate sustainable and resilient infrastructure development in developing countries through enhanced financial, technological and technical support to African countries, least developed countries, landlocked developing countries and small island developing States

Key Performance Indicator (KPI):

9.a.1 Total official international support (official development assistance plus other official flows) to infrastructure

#proposertoolsdg

Community Reviews (1)

Comments

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