Просмотр исходного кода

Added: PIP-0007 New Wallet GUI

Herman Schoenfeld 8 лет назад
Родитель
Сommit
bdeb650677

+ 64 - 0
PIP/PIP-0007.md

@@ -0,0 +1,64 @@
+<pre>
+  PIP: 7
+  Title: New Wallet GUI
+  Type: Front-End
+  Impact: None
+  Author: Herman Schoenfeld <i>&lt;[email protected]&gt;</i>
+  Comments-URI: <a href="https://github.com/PascalCoin/PascalCoin/issues/47">https://github.com/PascalCoin/PascalCoin/issues/47</a>
+  Status: Draft
+  Created: 2017-07-20
+</pre>
+
+## Summary
+
+Whilst fully functionality, PascalCoin's wallet GUI is overly complicated for most users and requires simplification. This PIP proposes a new wallet design.
+ 
+## Motivation
+
+Community consensus is that current wallet GUI is overly complicated and impedes adoption. Users have also requested translations into other languages. Before investing in new wallet features, a new design is warranted. 
+
+## Specification
+
+#### Main Screen
+The main screen should be similar to the familiar Bitcoin QT wallet screen
+
+![New Main Screen](resources/PIP-0007/mainscreen.png)
+
+The tabs from existing screen should should be moved into independent screens, available from a `Tools` menu option.
+
+![Old Main Screen](resources/PIP-0007/mainscreen_old.png)
+
+##### PASA Facuet Integration
+First-time users will be able to attain a PASA for free as follows:
+- When no accounts are present in the system, the screen shows a button `Get First Account`
+- When button is pressed, a dialog is presented to the user to select which key to use. 
+- A request is then made to the PASA Faucet Service which dispenses a PASA asset to the selected key.
+    + Appropriate protection must be added to prevent scammers depleting faucet (email workflow or other info TBD)
+
+#### Private Keys Screen
+The private keys screen should be refactored as follows:
+- Always obfuscate entered passwords with password character
+- Never display private keys openly
+- Utilise QR codes for importing and exporting of keys
+- Simplified UX
+
+#### Default Keys 
+The following keys should be created on default:
+- Public Accounts: used for publically receiving/sending funds
+- Private Accounts: used for privately storing savings
+- Shared Accounts: accounts shared between devices, parties
+- Company Accounts: accounts used for business purposes
+- Mining Accounts: accounts used for mining purposes
+ 
+## Rationale
+
+Free Pascal based wallet is chosen since it allows almost all existing code to be salvaged and retains cross-platform capability. Leveraging one of Pascal's benefits is an asset since we do not need complex and long-winded HTML based rich-client, as many other cryptocurrencies are doing.
+
+## Reference Implementation
+
+This PIP has being implemented by Herman Schoenfeld.
+
+## Backwards Compatibility
+
+All changes are fully backwards compatible.
+ 

BIN
PIP/resources/PIP-0007/mainscreen.png


BIN
PIP/resources/PIP-0007/mainscreen_old.png