This document provides guidance on designing user interfaces for decentralized applications (Dapps). It discusses 6 key principles:
1. Understand the underlying code to suggest improvements and ensure the interface properly translates it for users.
2. Focus on doing one job well rather than building large complex interfaces on decentralized networks with transaction fees.
3. Use open source fonts that can be freely redistributed to avoid reliance on third parties.
4. Employ grid systems for consistent and aligned layouts.
5. Constantly test interfaces with users through tools like usabilityhub.com and invision.com.
6. Keep users in control of their own data and funds rather than holding it centrally.
23. function abort() onlySeller inState(State.Created)
function confirmPurchase() inState(State.Created)
function confirmReceived() onlyBuyer inState(State.Locked)
function refund() onlySeller inState(State.Locked)