A modern, user-friendly GUI to make the SeedSigner software interface more accessible to non-technical users.
- Visual Design: Improve aesthetics and provide visual aids using UI treatments and iconography.
- Interaction Design: Increase overall efficiency of user inputs and feedback.
- Information Architecture: Improve findability by organizing and surfacing common tasks.
- Content Design: Simplify language to make abstract concepts more accessible to the average user.
- Navigation: Add Navigation Bar for context of location and easier access to global navigation functions
- IA: Accessible groupings of features, surface high-traffic actions
- Content: Simplify labels for viewport optimization and localization
- Visual: Add iconography to reduce cognitive load and aid localization
- Visual: Change font to a more legible but space-efficient typeface
- Efficiency - Speed (less time/taps, more efficient paths)
- Minimize button presses
- More information with less scrolling
- Predictable interactions and placement
- Findability
- Context of location (clear labeling, titles)
- Menu IA (card sorting, tree testing)
- Overall Satisfaction (qualitative)
- Ease-of-use
- Project Success Measures
- Enclosure and pre-built device sales
- Social media engagement
- Increased awareness to targeted features
- Reduction in support requests / complaints for targeted pain points
Prototype (WIP): Figma Prototype
- Arrow keys to navigate
- Space to select
Design File: Figma
Standard Measurements (8px Grid System):
- 4px
- 8px
- 12px
- 16px
- 24px
- 32px
- 64px
Notes:
- 8px margins maintained around layouts (224px usable space).
- 8px minumum padding between UI elements (when possible).
- Buttons/targets should be a minimum of 24px for legibility.
All typography uses the Open Sans font family and follows a set of type styles, each with an associated font size (px), line height (px), and font weight.
Type Styles:
- Title: 18px / 22 lh (Bold)
- Menu Label: 16px / 20 lh (Bold)
- Button Large: 18px / 22 lh (SemiBold)
- Button: 17px / 22 lh (SemiBold)
- Heading 17px / 22 lh (SemiBold)
- Body Strong: 17px / 22 lh (SemiBold)
- Body: 17px / 22 lh (Regular)
- Body Small: 16px / 20 lh (SemiBold)
- Caption: 14px / 18 lh (SemiBold)
The SeedSigner color palette is designed for a 'dark mode' interface.
Light text/images on a dark background provide adequate contrast, while color should be used sparingly in messaging or iconography when applicable.
Container (Disabled): #2C2C2C, 70%
- Navbar present on all screens.
- Content area begins directly below Navbar.
- Grid Menu
- List Menu
Variants:
- 1-button
- 2-button
- 3-button*
Variants:
- Transaction Details
- XPUB Details
Variants:
- Confirmation
- Warning
- Error
- Word Input
- Keyboard Input (Passphrase, Derivation, etc.)
- Dice Input
Components are reusable building blocks that are aggregated to compose a screen layout, with each component serving a specific function.
Usage: Included on every screen, fixed to top of viewport.
All elements within the Navigation Bar are conditional. Titles should always be included when possible.
Anatomy:
- Back Arrow (Medium Button)
- Title (13 character max)
- Action Button (Medium Button)
- Down Arrow (For pagination, displayed when scroll-up is available)
Variants:
- Standard
- Transparent (no title)
Anatomy:
- Contains: Icon (40x40)
- Label (10 character max)
States:
- Default
- Active
- Disabled
States:
- Default
- Active
- Disabled
- First
- Last
Variants:
- Left Text
- Left Text w/ Chevron
- Left Text w/ Icon
- Left + Right Text
- Left + Right Text w/ Icon
Usage: Set of buttons allowing for selection from 1-3 options. Fixed to bottom of viewport.
Variants:
- 1-Button (224x32)
- 2-Button (224x72)
- 3-Button (224x112)
- 2-up (224x32)
Usage: Call-to-action
Sizes:
- Standard (100% width)
- 2-up (50% width)
States:
- Default
- Active
- Disabled
- Alert
Variants:
- Text only
- Text w/ Icon
Usage: General, Navigation Bar
States:
- Default
- Active
- Disabled
Usage: Floating Action Buttons (icon), Keyboard Keys
States:
- Default
- Active
- Disabled
Usage: Floating Action Buttons (text)
States:
- Default
- Active
- Disabled
Usage: Word Entry UI
States:
- Default
- Active
Usage: Dice Entry UI
States:
- Default
- Active
Usage: Passphrase Entry, Derivation Entry
Usage: View/Review Seed Words
Usage: Informational screens
Variants:
- 1-row (224x40)
- 2-row (224x60)
- 3-row (224x80)
Usage: Contextual overlays. Does not interrupt experience.
Messaging Types:
- Default
- Success
- Warning
- Error
Variants:
- No Subtitle (224x48)
- Subtitle (224x60)
Work-in-progress: Some iconography uses the FontAwesome icon library, denoted by an asterisk.
Scan (40x40)
Seeds (40x40)
Settings (40x40)
Tools (40x40)
Back (24x24)
Check (24x24)
Checkbox (24x24)
Checkbox Selected (24x24)
Chevron Down (24x24)
Chevron Left (24x24)
Chevron Right (24x24)
Chevron Up (24x24)
Close (24x24)
Page Down (16x8)
Page Up (16x8)
Plus (24x24)
Power (24x24)
Restart (24x24)
Error (40x40)
Success (40x40)
Warning (40x40)
Address (24x24)
Change (24x24)
Derivation (24x24)
Fee (24x24)
Fingerprint (24x24)
Passphrase (24x24)
Bitcoin (24x24)
Bitcoin Alt (24x24)
Brightness (24x24)
MicroSD (24x24)
QR Code (24x24)
SD Card (24x24)
- Next - Continue to next step
- Done - End of flow, return to entry point (non-destructive)
- OK/Close - Exit current screen (non-destructive)
- Cancel - End task and return to entry point (destructive)
Categories and labels should be clear and meaningful to users.
Navigational labels should:
- Make sense to all users, not just to advanced Bitcoin users
- Be concise -- maximum of 2 words if possible
- Only lead with an action verb when it's necessary for clarity
- Use "&"" instead of "and" for readability and space efficiency
- Meet users' expectations of what they'll find at a destination
Like items should be clustered for enhanced discoverability.
Navigational groupings should:
- Meet user expectations (mental model)
- Consist of like items
- Adhere to cognitive load best practices
- Not have too many (or too few) items in a category
The order of items should make sense and meet user expectations.
Menu item hierarchy should:
- Derive from user expectations
- Prioritize frequently-used and urgent tasks
- Leverage a common heirarchy of left-to-right or top-to-bottom based on frequency, urgency, and promoting awareness
- Utilize last position in a list (e.g. users expect Help/Contact near the bottom)
Decrease clutter that may confuse or distract users.
To reduce cognitive load:
- Limit the number of menus, categories, and items
- Avoid using a general category as a catch-all for orphan items
- Avoid visual clutter that may confuse or distract users
When used, should align with the larger navigation ecosystem.
Contextual navigation should:
- Meet users' mental model for finding information and performing tasks
- Be easily visible and actionable
- Enhance but not duplicate the global navigation
- Create awareness of additional services/features
v0.1 (2021-07-16)
- Overview, design goals, proposed enhancements, preliminary design system
v0.2 (2021-09-14)
- Table of contents, IA best practices, key performance indicators
v0.3 (2021-10-31)
- Added layouts, added info tile and messaging components, updated color palette image, minor copy edits
v0.4 (2021-11-20)
- Added typography, color palette, components
v0.5 (2022-02-11)
- Added iconography (WIP)
v0.6 (2023-08-08)
- Updated iconography
- Added Figma design file
- Updated usage for messaging overlay