#
Decentralization Gold Standard
Security
All Dapp must strive to rely only on the interface from wallet e.g. RPC, API
The wallet should have the ability to stub (replace) mainnet with fork mainnet enable users interact to Dapp as if they were always on mainnet
Dapp should not know nor care if it is connected to fork mainnet or live mainnet
Wallet should have the ability to simulate transaction on fork mainnet before submit transaction And have the UI compare and highlight the delta between state of the wallet before and after submiting transaction e.g. Wallet balance, Token Ownership.
Dapp and Smartcontract should strive to use the same dependency for readability and consolidate testing and auditing effort e.g. Use the same version of Ether.js v6.13.2 use the same ERC 721 standard
Dapp must not show nor rely on stale data
Testability
Wallet should have intuitive UI to impersonate as other account
Dapp testing should limit the use of testnet as much as possible since they are not representative of the actual mainnet e.g. Compound Ethereum Sepolia Testnet doesn't have LINK contract deployed like Ethereum Mainnet
Transparency
Dapp must clearly disclose all contract addresses that Dapp interacts with on the current chain
Dapp must clearly disclose all API URL that Dapp is relying on
Dapp must not be compressed minified uglified the client
Dapp must clearly disclose links to all code repositories, assets and artifact
Event though some of these are impractical at the moment we should try hard to live up to the decentralise promise
Co author: Callum