mirror of https://github.com/status-im/swarms.git
wallet swarm proposal
This commit is contained in:
parent
c5c38ae38e
commit
b63467ab79
|
@ -0,0 +1,157 @@
|
||||||
|
---
|
||||||
|
id: #311-wallet
|
||||||
|
title: Wallet Swarm
|
||||||
|
status: implementation
|
||||||
|
lead-contributor: Goran - Clojure
|
||||||
|
contributors:
|
||||||
|
- Bruce - Clojure
|
||||||
|
- Nastya - QA
|
||||||
|
- Tanya - QA
|
||||||
|
- Patrick - UXR
|
||||||
|
- Philip - UXR
|
||||||
|
- Denis - UX
|
||||||
|
- Chad - PM
|
||||||
|
budget:
|
||||||
|
- actual: xxx
|
||||||
|
- estimate: yyy
|
||||||
|
- currency: ETH/USD/SNT
|
||||||
|
---
|
||||||
|
|
||||||
|
# Wallet Swarm
|
||||||
|
|
||||||
|
## Summary and Goal(s)
|
||||||
|
|
||||||
|
The Wallet swarm focuses on the Wallet tab within Status, and related transaction actions throughout the app, such as in Chat with `/send ETH 0.5`.
|
||||||
|
|
||||||
|
### Problem
|
||||||
|
|
||||||
|
> What problem are you solving? Who are you solving this for?
|
||||||
|
|
||||||
|
Status Wallet facilitates ethereum usage and transactions, but does not offer a compelling reason for users to download and open the app. Our research ([July ‘18](https://docs.google.com/presentation/d/1eJP-Hh4tN6XZREIy73GNuJP1LqGg41EvP5QpVlFZQ78/edit#slide=id.g3e1b33ca7e_2_36), [June '14](https://docs.google.com/presentation/d/11vEgAbZgXvCwiS2QdMmW3vjOBApx5y8ARXNbFLyJBuk/edit#slide=id.g3beee3ddf4_0_0)) has shown there are two main problems that prevent wallet usage:
|
||||||
|
|
||||||
|
- Usability issues that prevent simple transaction and erode trust
|
||||||
|
- Usability issues of our wallet specifically (e.g. how much am I sending, what is the value in fiat when sending via wallet and via chat)
|
||||||
|
- Usability issues of Ethereum itself (e.g. what does it mean 5 confirmations, was it sent or now? what is gas?)
|
||||||
|
|
||||||
|
- Lack of killer features that drive adoption
|
||||||
|
- Lack of a goal-driven interaction flow. E.g. buy SNT/Cryptokitty
|
||||||
|
- For non crypto users; a lack of introduction or guidance. “I'll look into that later because I don't know what I'm doing.” E.g. what would a gentle transition from a DApp to wallet look like.
|
||||||
|
|
||||||
|
### Why
|
||||||
|
|
||||||
|
> Will solving this problem advance the goals of Status and adhere to its principles?
|
||||||
|
|
||||||
|
Status aims to be a gateway to ethereum, and wallet and transactions are at the core of this ambition. Many aspects of the Status vision including the whitepaper depend on a functioning wallet that is secure, private, and easy to use, therefore it is important that Wallet creates a core foundation of usability and delight through best-in-class UI and compelling features.
|
||||||
|
|
||||||
|
Furthermore, the central Wallet feature - transaction signing - is essential for dapp usage within Status , and vice versa.
|
||||||
|
|
||||||
|
Solving usability bottlenecks and introducing killer features that give users a reason to open Status will ensure that Status drives adoption and will unblock more advanced use cases outlined in the whitepaper and beyond.
|
||||||
|
|
||||||
|
### Success Criteria
|
||||||
|
|
||||||
|
> How will we know when this problem has been addressed? What are qual and quant metrics that will help evaluate?
|
||||||
|
|
||||||
|
Success for wallet is having the best mobile user experience for transactions, is super easy to use, offers compelling features, and is the best way to easily get tokens. A fun onboarding experience is essential to give new users something to do and people to connect with.
|
||||||
|
|
||||||
|
- 80%+ of UXR subjects report a positive experience when transacting
|
||||||
|
- 5+ organic reports of users using Status for transactions (eg tweets, sightings, etc)
|
||||||
|
- 3+ way for users to acquire tokens
|
||||||
|
|
||||||
|
|
||||||
|
## Communication
|
||||||
|
|
||||||
|
- `status channel`: [#311-wallet](https://get.status.im/chat/public/311-wallet)
|
||||||
|
- `sync frequency`: Weekly Sync
|
||||||
|
- Github:
|
||||||
|
- Project boards
|
||||||
|
- [Wallet epic project board](https://github.com/orgs/status-im/projects/48)
|
||||||
|
- [Maintenance project board](https://github.com/orgs/status-im/projects/24)
|
||||||
|
- Label: [wallet](https://github.com/status-im/status-react/labels/wallet)
|
||||||
|
|
||||||
|
|
||||||
|
## Implementation
|
||||||
|
|
||||||
|
Projects that have a clear exit criteria, with a few iterations, after which the task is considered completed (e.g. wallet redesign, implementation of eip-5, ec.)
|
||||||
|
|
||||||
|
### Usability
|
||||||
|
|
||||||
|
#### Wallet redesign
|
||||||
|
|
||||||
|
Fix usability issues and create meaningful improvements with regard to interaction patterns, feedback, labeling and copy of the current flows.
|
||||||
|
Epic: [#6921](https://github.com/status-im/status-react/issues/6921)
|
||||||
|
|
||||||
|
Status: Implementation
|
||||||
|
|
||||||
|
#### Custom ERC20 Tokens
|
||||||
|
|
||||||
|
Let users control their own wallet and add any erc20 token they possess. Currently Status only supports a limited fixed list which is manually maintained by core contributors.
|
||||||
|
Epic: [#6939](https://github.com/status-im/status-react/issues/6939)
|
||||||
|
|
||||||
|
Status: Research
|
||||||
|
|
||||||
|
#### Functional Transaction/Transfer History
|
||||||
|
|
||||||
|
Status depends on Etherscan API to display ethereum transactions and it depends on Infura to display ERC-20 token transfers.
|
||||||
|
Epic: [#6940](https://github.com/status-im/status-react/issues/6940)
|
||||||
|
|
||||||
|
Status: Research
|
||||||
|
|
||||||
|
#### Address Validity
|
||||||
|
|
||||||
|
Implement EIP-55
|
||||||
|
Epic: [#6941](https://github.com/status-im/status-react/issues/6941)
|
||||||
|
|
||||||
|
Status: Research
|
||||||
|
|
||||||
|
#### Ethereum Links and QRs
|
||||||
|
|
||||||
|
Implement EIP-681 and EIP-831 to facilitate easy and standards-compliant transfers
|
||||||
|
Status: Research
|
||||||
|
|
||||||
|
### Adoption
|
||||||
|
|
||||||
|
#### Desktop
|
||||||
|
|
||||||
|
Bring wallet to more platforms which can lead to more adoption. Wallet will have feature parity on mobile and desktop.
|
||||||
|
|
||||||
|
Epic: [#6297](https://github.com/status-im/status-react/issues/6297)
|
||||||
|
|
||||||
|
Status: Design
|
||||||
|
|
||||||
|
#### Get Tokens
|
||||||
|
|
||||||
|
Help users get tokens by means of credit, teller network, and exchange.
|
||||||
|
|
||||||
|
Status: Research
|
||||||
|
|
||||||
|
#### Point of Sale
|
||||||
|
|
||||||
|
Create a proof of concept that would help merchants use Status to transact.
|
||||||
|
|
||||||
|
Status: Research
|
||||||
|
|
||||||
|
#### Native Token Swaps
|
||||||
|
Make it easy for users to swap tokens natively in chat
|
||||||
|
|
||||||
|
Status: Research
|
||||||
|
|
||||||
|
## Maintenance
|
||||||
|
|
||||||
|
This effort is continuous and doesn't have any end date or exit criteria (internal security reviews, bugfixing, refactoring, bounties, community engagement).
|
||||||
|
|
||||||
|
### Security
|
||||||
|
|
||||||
|
Security champions, reviews.
|
||||||
|
|
||||||
|
### Bugfixing and refactoring
|
||||||
|
|
||||||
|
Standing rule to prioritize critical bugs above any other work until resolved. After the critical fix, there should be a follow up to determine how can the same type of bug be prevented from reoccurring in the future. The action taken could be a refactor, a new kind of automated/manual test case or both.
|
||||||
|
|
||||||
|
### Community engagement
|
||||||
|
|
||||||
|
Communication activities in primarily in relation to implementation of relevant standard proposals and to community involvement in general.
|
||||||
|
|
||||||
|
|
||||||
|
## Copyright
|
||||||
|
|
||||||
|
Copyright and related rights waived via [CC0](https://creativecommons.org/publicdomain/zero/1.0/).
|
Loading…
Reference in New Issue