Hive Keychain Proposal

Proposal material.png

A lot has happened this past year and if you've followed @keychain account posts, you know that we've never stopped building features and improving our projects, both on our mobile Apps (available on Android and iOS) and extensions (available on all Chromium browsers and Firefox).

Let's start with some numbers to put Hive Keychain in perspective:

Proposal material (3).png

The current proposal is coming to an end soon but there's still much we want to do to help the Hive ecosystem thrive, hence this new proposal.

Hive Keychain DHF

This new proposal will start on May 15th, the date at which the current one will expire, there will be no overlap between the two proposals.

This proposal will mainly focus on three different goals:

  • Development: Maintaining, improving, and adding features to our extensions, mobile Apps and other products (~65% of resource allocation), based on the ecosystem needs and popular user demands
  • Redesign the extensions and mobile Apps, improve their design and UX (~15% of resource allocation)
  • Bridge Hive to the broader ecosystem (~20% of resource allocation)

1. Development

Developing new features for our Hive products is and always will be our core objective. Here is an overview of what has been achieved in the past 12 months, and what we want to do next.

Hive Keychain Mobile

There is a ton of features we want to provide to make Keychain a great mobile App that would help the whole Hive mobile ecosystem thrive. As such, we put a lot of work on the mobile side :

  • Transactions can now be initiated via QR Code, useful for businesses
  • Companion dApp enables to create the said QR Codes, find it here
  • Software Development Kit (SDK) for 3rd party developers to create said QR Codes, here
  • Browser improvement: better search bar autocomplete including all ecosystem dApps and favorites, possibility to clear cache (long press on refresh), swap between tabs, etc.
  • Added a governance page (witness vote, proxy, proposals)
  • Added missing Hive Engine features (staking, delegations, etc.)
  • Full account history, filterable
  • Full Hive Engine account history
  • Added a Buy HIVE/HBD feature
  • Added the possibility to create accounts, by paying HIVE or with account creation tickets
  • Adding/Importing accounts by authority
  • Show current savings withdrawals
  • Better RPC nodes management
  • "What’s new?" popup
  • More dApps in the Explore section (contact us on Discord to add yours)
  • Apps size optimization
  • Improved HiveAuth integration to facilitate dApps experience on mobile
  • UI/UX improvements
  • Added unit and integration tests

We've basically done everything we planned to do and more, except for dApp to dApp integration. We were planning to work on it but soon realized that with more and more dApps integrating HiveAuth, making sure it worked well was more of a priority, since it does the same thing but across more devices. We will work on it during this new proposal if there is a demand for it. To make it easier to work across platforms, it would keep the same format as our extension SDK.

Additionally, we plan to implement the following :

  • Notification system
  • Once multisig is ready, mobile implementation and 2FA via multisig
  • In-App QR Code generation for businesses or individuals wishing to receive a HIVE/HBD payment. Customers will just have to scan it with their Keychain and validate the payment. We're seeing more and more Hive businesses and are hoping that this will help with adoption!
  • Widgets (eg. Ticker, Portfolio)
  • Automated tasks (claiming rewards, savings interest, and account creation tickets on a regular basis)
  • Keep improving the browser to make it smoother to use
  • Set up a tutorial system to make things easier for newcomers.
  • Keychainify implementation (transform HiveSigner links into Keychain transactions if enabled)
  • UI/UX Redesign (more on this on 2. and 3.)
  • Keeping up with new features introduced by Hard Forks
  • Users / Devs support.

Hive Keychain Extension

Lots of time and energy were spent on the extension side as well:

  • We've deployed Keychain v2 to production. It came with a lot of new features and a better UI/UX
  • Ledger integration. This was not an easy one, but we're really proud to offer even more security to our users through Ledger support. More information here
  • Swap feature: Swap effortlessly between HIVE, HBD, and Hive Engine tokens (coming soon TM)
  • Plugin system: A system that will enable other extensions to work with Keychain, without impacting security. It is already ready to use, but we are awaiting the completion of our first plugin (funded outside of the DHF scope) before releasing it. Devs interested in developing their own plugins can contact us on Discord
  • Completed the account history (filterable)
  • Added missing Hive Engine operations (staking, delegations, etc.)
  • Created a Governance tab
  • Added dynamic RPC nodes handling
  • Settings can now be exported as a file
  • Automatically claim savings interests
  • Choose RPC nodes for Hive Engine
  • Built a "What’s new?" popup
  • Added Transak integration for quickly buying HIVE
  • Added Hive accounts creation (paid for by account creation ticket or 3.000 HIVE)
  • Added a reminder for governance votes expiration
  • Added pending conversions and savings withdrawals
  • Integrated Analytics (up to users)
  • Added RC delegations
  • Developed an SDK for developers (more details below)
  • Started using hive-tx instead of dhive to reduce the extension size
  • Updated the username autocomplete to include exchanges, past receivers, and own accounts
  • Developing My witness page (shipping soon)
  • Developing a Manage Authorities page (shipping soon)
  • Linking Hive Engine transactions to their block explorer (shipping soon)
  • Completed unit/integration testing coverage
  • Performed UI/UX improvements
  • Updated the documentation

For the sake of transparency, let's discuss the two items from the last proposal that we didn't deliver:

  • NFT: Sadly, NFTs on Hive are a mess to work with, due to the lack of a unified format and forced us to work with projects one by one. Since it was too time-consuming, we decided to stop working on it until there is some way to easily fetch and display NFTs. We'd be happy to support anyone working on this.
  • 2FA: We decided to wait to implement it using Hive Multisig, which should be ready soon. Once this is implemented, we can have a transaction signed by two different keys on different devices.

Here's a non-exhaustive list of what we plan to work on, on the extension side :

  • Advanced key management (multiple keys, authorized accounts, weight, and threshold management)
  • Multisig implementation once it's ready. That will be a big step towards an even safer Hive experience, both at the user and organizational levels
  • 2FA system based on multisig as mentioned above
  • Ecosystem page for better dApp discovery
  • Other hardware wallets integration, based on user requests and App availability (only Ledger has a Hive App for the time being)
  • Detect if keys or vesting routes changed
  • Hive Engine automated tasks (auto-staking for instance)
  • Extension tour for a better user onboarding (in-App tutorial). Hive has a steep learning curve, this will aim to smooth it up a little bit
  • Portfolio page
  • Transactions export
  • Redesign UI/UX (see 2. and 3. below)
  • Keeping up with new features introduced by Hard Forks
  • Users / Devs support.

Keychain SDK

We've recently released our SDK (Software Development Kit), making it easier and faster for dApps to integrate with Keychain. It is available on npm and is accompanied by a playground to help devs test the different possible transactions.
We're working closely with developers to make the SDK as useful as possible.

Keychain Commons

Little by little, we're putting code in a separate repository, that can be accessed by both the mobile Apps and extensions, in order to get the same code running on both sides. So far we mostly use it for our interfaces, but we plan to keep growing this repo in the future.

Landing page

We've improved a bit Hive Keychain landing page, available here. We plan to redesign it to add more information once we're working with a designer (see 2.)

Backend

Our backend has been refactored, using Typescript. The repository has been reorganized and requests can be tested directly using Thunder Client (a REST API Client extension for VS Code).

2. Design

We're very grateful to have had @nateaguila's (VP of Creative at Splinterlands) support in designing the original Hive Keychain extensions and mobile Apps.

Since he has a lot on his plate and we have big changes coming (see 3.), we want to work more closely with a UI/UX designer to design a new, sharp version of Keychain. This will also be a chance to propose a more uniform experience to our users across different devices (on the extensions and mobile Apps).

If you are a professional UI/UX designer, love Hive, and use Keychain on a regular basis, we should talk! Send us your portfolio and resume on the #design-application channel of our Discord.

3. Bridging Hive to the broader ecosystem

As the main way to access dApps built on Hive, we are at the center of our ecosystem. But this comes with a problem, users come to Keychain because they are already on Hive. As a wallet, it is hard for us to go onboard users from outside the ecosystem. This brings the following question :

How do we help to bring the next million users to the Hive blockchain?

To answer this question and others, we conducted a survey a few months ago, to which almost 1,200 of you answered.

We've proposed the following scenario :

During the bear market, attracting new users from outside the blockchain ecosystem is hard. Why not try to attract people already using dApps instead?
Consider the following scenario:

  • Integrating Keychain on another blockchain that you're already using, so that you won't need to use multiple wallets
  • Gain users on this other chain by establishing partnerships with dApps
  • Promote Hive dApps
  • Repeat

We strongly believe that by reaching out to a broader ecosystem, we can grow together to new all-time highs! 🚀🚀🚀

Although we thought this could be a bit controversial, the respondents were overwhelmingly in favor :

This is why we are proposing to put a small percentage of our resources (~15-20%) towards restructuring Keychain into a multichain wallet, with a focus on Hive dApp discovery. By the end of the proposal, we aim to have a Beta version of our multichain wallet, allowing all basic interactions on EVM chains. Why EVM? Some of our dApps have already led the way in bridging our two ecosystems (@splinterlands with BSC, @leofinance with Polygon, etc.), and many of our users are already using EVM chains (76%).

Why would the Hive DHF pay for development on another chain though?

That's probably what you're thinking, right? In our opinion, it would be beneficial for the ecosystem for the following reasons :

  • As a bridge between Hive and other ecosystems, we could bolster Hive and Hive dApps adoption
  • We would make it easier to fully use the few Hive dApps that are already multichain, from the comfort of a unique wallet
  • We could make it easy for new users to create a free Hive account, verified by their web3 identity: a big step for free onboarding without giving a phone number or email
  • Easier to buy and sell HIVE and HBD on EVM liquidity pools
  • This also gives us the chance to increase our revenue streams and allow us to bring more features thanks to these other sources of funding

This part of the proposal is open to (polite) discussion, we'd love to see if the community is ready for this or would rather have us focus all our energy and passion on the other Hive features.

Additional work

Admin

We've set up a company, hired @cedricguillas full-time last March, @theghost1980 last April as full-time developers, and @manuphotos as a CM last October. At the end of last year, we were enrolled in AppWorks Accelerator as part of batch #25, it's one of the biggest in Asia with a big focus on blockchain. This was a great experience that helped us become better founders.

Support

We are always thriving to give a timely response to issues reported on our Discord and/or Github. We'll set up a ticketing system on our Discord in the near future to make support easier.
Since we're here, big thanks to @thekittygirl and @foxon for their commitment to helping users on our channel and others!

Twitter

@manuphotos is doing an amazing job growing our Twitter presence (>2k followers) and promoting both Hive Keychain and the whole Hive ecosystem through his daily tweets.

Translation

With so much on our plate, the translation of the Apps and extensions lagged a bit behind, but we've worked on automating the translation process through Crowdin and will call translators to work on it soon.

Budget

For this new proposal, we are applying for a daily budget of 600 HBD for a period of 12 months.
This increase in the daily budget reflects the growth of our team. Last year we grew from a one-person team to 3 full-time devs and 1 part-time CM.
To work towards our new goals, we will hire a designer and an additional front-end developer.

Commitments

  • We commit to keeping all the code produced through this funding opensource. You can find Hive Keychain extension and Hive Keychain mobile on their respective Github repositories.
  • We commit to writing monthly updates. We hope you enjoyed following our development updates so far.

Downloads and Contact

You can find download information for the Apps and extensions, as well as links to different resources on our landing page.

Team

@stoodkev : CEO - Witness
@cedricguillas : CTO - Witness
@theghost1980 : Front-end Developer
@manuphotos : Community Manager
@nateaguila : UI/UX Advisor
@yabapmatt : Advisor - Witness


Support Hive Keychain development by voting for this proposal on PeakD, or with HiveSigner.

You can also help us by reblogging this proposal.

100% of the rewards of this post are going to the DHF

H2
H3
H4
3 columns
2 columns
1 column
83 Comments
Ecency