278 lines
9.4 KiB
Markdown
278 lines
9.4 KiB
Markdown
|
|
# Gamepad Navigation Map
|
||
|
|
|
||
|
|
Every arrow key, every position, every page.
|
||
|
|
|
||
|
|
`[C]` = Container (red tile, D-pad grid)
|
||
|
|
`[N]` = Nav bar item (secondary, reached via Up from top row)
|
||
|
|
`[Y]` = Inner control (entered via Enter on container, exited via Escape)
|
||
|
|
`[S]` = Sidebar item
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Sidebar (all pages)
|
||
|
|
|
||
|
|
Vertical list. Up/Down wrap. Right enters page. Left does nothing.
|
||
|
|
|
||
|
|
| Position | Up | Down | Right | Left |
|
||
|
|
|------------|------------|------------|----------------|---------|
|
||
|
|
| Home | Logout | Apps | First [C] | nothing |
|
||
|
|
| Apps | Home | Cloud | First [C] | nothing |
|
||
|
|
| Cloud | Apps | Mesh | First [C] | nothing |
|
||
|
|
| Mesh | Cloud | Network | First [C] | nothing |
|
||
|
|
| Network | Mesh | Web5 | First [C] | nothing |
|
||
|
|
| Web5 | Network | Fleet | First [C] | nothing |
|
||
|
|
| Fleet | Web5 | Settings | First [C] | nothing |
|
||
|
|
| Settings | Fleet | AIUI | First [C] | nothing |
|
||
|
|
| AIUI | Settings | Logout | First [C] | nothing |
|
||
|
|
| Logout | AIUI | Home | First [C] | nothing |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## HOME `/dashboard`
|
||
|
|
|
||
|
|
### Nav bar `[N]`
|
||
|
|
|
||
|
|
```
|
||
|
|
[N] Dashboard [N] Setup
|
||
|
|
```
|
||
|
|
|
||
|
|
### Grid `[C]`
|
||
|
|
|
||
|
|
```
|
||
|
|
Row 1: [C] My Apps [C] Cloud
|
||
|
|
Row 2: [C] Network [C] Wallet
|
||
|
|
Row 3: [C] System
|
||
|
|
Row 4: [C] Quick Start (full-width, if visible)
|
||
|
|
```
|
||
|
|
|
||
|
|
| Position | Up | Down | Left | Right | Enter |
|
||
|
|
|---------------|--------------|--------------|------------|----------|---------------------------|
|
||
|
|
| [N] Dashboard | nothing | My Apps | nothing | Setup | Switch tab |
|
||
|
|
| [N] Setup | nothing | My Apps | Dashboard | nothing | Switch tab |
|
||
|
|
| My Apps | [N] bar | Network | Sidebar | Cloud | /dashboard/apps |
|
||
|
|
| Cloud | [N] bar | Wallet | My Apps | nothing | /dashboard/cloud |
|
||
|
|
| Network | My Apps | System | Sidebar | Wallet | /dashboard/server |
|
||
|
|
| Wallet | Cloud | nothing | Network | nothing | /dashboard/web5 |
|
||
|
|
| System | Network | Quick Start | Sidebar | nothing | /dashboard/settings |
|
||
|
|
| Quick Start | System | nothing | Sidebar | nothing | Drill into [Y] |
|
||
|
|
|
||
|
|
### Quick Start `[Y]` inner controls
|
||
|
|
|
||
|
|
```
|
||
|
|
[Y] Open a Shop [Y] Accept Payments [Y] File Browser
|
||
|
|
```
|
||
|
|
|
||
|
|
| Position | Left | Right | Escape |
|
||
|
|
|------------------|------------------|------------------|----------------|
|
||
|
|
| Open a Shop | nothing | Accept Payments | Back to [C] |
|
||
|
|
| Accept Payments | Open a Shop | File Browser | Back to [C] |
|
||
|
|
| File Browser | Accept Payments | nothing | Back to [C] |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## APPS `/dashboard/apps`
|
||
|
|
|
||
|
|
### Nav bar `[N]`
|
||
|
|
|
||
|
|
```
|
||
|
|
[N] My Apps [N] App Store [N] Services | [N] All [N] Bitcoin [N] Social (etc) | [N] Search
|
||
|
|
```
|
||
|
|
|
||
|
|
Three groups: page tabs, category filters (dynamic), search input.
|
||
|
|
|
||
|
|
| Position | Up | Down | Left | Right | Enter |
|
||
|
|
|----------------|---------|---------|----------------|----------------|--------------------|
|
||
|
|
| [N] My Apps | nothing | App1 | nothing | App Store | Switch tab |
|
||
|
|
| [N] App Store | nothing | App1 | My Apps | Services | /dashboard/discover|
|
||
|
|
| [N] Services | nothing | App1 | App Store | All filter | Switch tab |
|
||
|
|
| [N] All | nothing | App1 | Services | Bitcoin (etc) | Filter |
|
||
|
|
| [N] Search | nothing | App1 | last filter | nothing | Type text |
|
||
|
|
|
||
|
|
### Grid `[C]` (3-col)
|
||
|
|
|
||
|
|
```
|
||
|
|
Row 1: [C] App1 [C] App2 [C] App3
|
||
|
|
Row 2: [C] App4 [C] App5 [C] App6
|
||
|
|
(etc)
|
||
|
|
```
|
||
|
|
|
||
|
|
| Position | Up | Down | Left | Right | Enter |
|
||
|
|
|----------------|-----------|-----------|-----------|----------|-----------------|
|
||
|
|
| App1 (row 1) | [N] bar | App4 | Sidebar | App2 | Launch app |
|
||
|
|
| App2 (row 1) | [N] bar | App5 | App1 | App3 | Launch app |
|
||
|
|
| App3 (row 1) | [N] bar | App6 | App2 | nothing | Launch app |
|
||
|
|
| App4 (row 2) | App1 | App7 | Sidebar | App5 | Launch app |
|
||
|
|
| App5 (row 2) | App2 | App8 | App4 | App6 | Launch app |
|
||
|
|
| App6 (row 2) | App3 | App9 | App5 | nothing | Launch app |
|
||
|
|
| (etc) | above | below | left/side | right | Launch app |
|
||
|
|
|
||
|
|
### App `[Y]` inner controls (if no launch action)
|
||
|
|
|
||
|
|
```
|
||
|
|
[Y] Stop [Y] Restart [Y] Uninstall
|
||
|
|
```
|
||
|
|
|
||
|
|
Escape exits back to [C] app card.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## CLOUD `/dashboard/cloud`
|
||
|
|
|
||
|
|
No nav bar.
|
||
|
|
|
||
|
|
### Grid `[C]` (3-col)
|
||
|
|
|
||
|
|
```
|
||
|
|
Row 1: [C] Photos [C] Music [C] Documents
|
||
|
|
Row 2: [C] Files [C] Peer1 [C] Peer2 (etc)
|
||
|
|
```
|
||
|
|
|
||
|
|
| Position | Up | Down | Left | Right | Enter |
|
||
|
|
|-------------|------------|-----------|-----------|------------|-------------------|
|
||
|
|
| Photos | nothing | Files | Sidebar | Music | Open section |
|
||
|
|
| Music | nothing | Peer1 | Photos | Documents | Open section |
|
||
|
|
| Documents | nothing | Peer2 | Music | nothing | Open section |
|
||
|
|
| Files | Photos | nothing | Sidebar | Peer1 | Open section |
|
||
|
|
| Peer1 | Music | nothing | Files | Peer2 | Open peer files |
|
||
|
|
| Peer2 | Documents | nothing | Peer1 | nothing | Open peer files |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## NETWORK `/dashboard/server`
|
||
|
|
|
||
|
|
No nav bar.
|
||
|
|
|
||
|
|
### Grid `[C]` (2-col)
|
||
|
|
|
||
|
|
```
|
||
|
|
Row 1: [C] Local Network [C] Web3
|
||
|
|
Row 2: [C] Quick Actions (etc)
|
||
|
|
```
|
||
|
|
|
||
|
|
| Position | Up | Down | Left | Right | Enter |
|
||
|
|
|----------------|-----------|---------------|-----------|-----------|------------------|
|
||
|
|
| Local Network | nothing | Quick Actions | Sidebar | Web3 | Drill into [Y] |
|
||
|
|
| Web3 | nothing | Quick Actions | Local Net | nothing | Drill into [Y] |
|
||
|
|
| Quick Actions | Local Net | nothing | Sidebar | nothing | Drill into [Y] |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## WEB5 `/dashboard/web5`
|
||
|
|
|
||
|
|
No nav bar. Containers from child components stacked vertically + side-by-side.
|
||
|
|
|
||
|
|
### Grid `[C]`
|
||
|
|
|
||
|
|
```
|
||
|
|
Row 1: [C] Action1 [C] Action2 [C] Action3 [C] Action4 [C] Action5 [C] Action6
|
||
|
|
Row 2: [C] Wallet [C] Domains
|
||
|
|
Row 3: [C] Nostr Relays [C] Node Visibility
|
||
|
|
Row 4: [C] Connected Nodes
|
||
|
|
```
|
||
|
|
|
||
|
|
Standard spatial grid nav. Left from leftmost = Sidebar. Enter = drill into [Y] controls.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## DISCOVER `/dashboard/discover`
|
||
|
|
|
||
|
|
### Nav bar `[N]`
|
||
|
|
|
||
|
|
```
|
||
|
|
[N] My Apps [N] App Store [N] Services | [N] Category filters (etc)
|
||
|
|
```
|
||
|
|
|
||
|
|
### Grid `[C]` (3-col)
|
||
|
|
|
||
|
|
```
|
||
|
|
Row 0: [C] Featured1 [C] Featured2 [C] Featured3
|
||
|
|
Row 1: [C] App1 [C] App2 [C] App3
|
||
|
|
(etc)
|
||
|
|
```
|
||
|
|
|
||
|
|
| Position | Up | Down | Left | Right | Enter |
|
||
|
|
|--------------|-------------|----------|-----------|------------|---------------|
|
||
|
|
| [N] tabs | nothing | Featured1| left tab | right tab | Switch/filter |
|
||
|
|
| Featured1 | [N] bar | App1 | Sidebar | Featured2 | View details |
|
||
|
|
| App1 | Featured1 | App4 | Sidebar | App2 | Install |
|
||
|
|
| (etc) | above | below | left/side | right | Install |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## MESH `/dashboard/mesh`
|
||
|
|
|
||
|
|
### Grid `[C]`
|
||
|
|
|
||
|
|
```
|
||
|
|
Row 1: [C] Device Status [C] Chat Panel
|
||
|
|
Row 2: [C] Peers List [C] Tab Panel (Bitcoin/Dead Man/Map)
|
||
|
|
```
|
||
|
|
|
||
|
|
Spatial grid nav. Enter = drill into controls.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## FLEET `/dashboard/fleet`
|
||
|
|
|
||
|
|
### Grid `[C]`
|
||
|
|
|
||
|
|
```
|
||
|
|
Row 1: [C] Nodes [C] Online [C] Offline [C] Health
|
||
|
|
Row 2: [C] Node1 [C] Node2 [C] Node3 (etc)
|
||
|
|
```
|
||
|
|
|
||
|
|
Spatial grid nav. Enter = view node details.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## SETTINGS `/dashboard/settings`
|
||
|
|
|
||
|
|
### Grid `[C]` (vertical stack)
|
||
|
|
|
||
|
|
```
|
||
|
|
Row 1: [C] Account Info
|
||
|
|
Row 2: [C] Change Password
|
||
|
|
Row 3: [C] Two-Factor Auth
|
||
|
|
Row 4: [C] System Info
|
||
|
|
Row 5: [C] Danger Zone
|
||
|
|
```
|
||
|
|
|
||
|
|
| Position | Up | Down | Left | Right | Enter |
|
||
|
|
|-------------------|-----------------|------------------|---------|---------|------------------|
|
||
|
|
| Account Info | nothing | Change Password | Sidebar | nothing | Drill into [Y] |
|
||
|
|
| Change Password | Account Info | Two-Factor | Sidebar | nothing | Drill into [Y] |
|
||
|
|
| Two-Factor | Change Password | System Info | Sidebar | nothing | Drill into [Y] |
|
||
|
|
| System Info | Two-Factor | Danger Zone | Sidebar | nothing | Drill into [Y] |
|
||
|
|
| Danger Zone | System Info | nothing | Sidebar | nothing | Drill into [Y] |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## LOGIN `/login`
|
||
|
|
|
||
|
|
No sidebar, no grid. Simple form.
|
||
|
|
|
||
|
|
| Position | Up/Down | Enter |
|
||
|
|
|------------|----------------|----------|
|
||
|
|
| Password | Login button | Submit |
|
||
|
|
| Login | Password | Submit |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## ONBOARDING `/onboarding/*`
|
||
|
|
|
||
|
|
No sidebar, no grid. Sequential screens.
|
||
|
|
Button auto-focused. Enter advances.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Rules
|
||
|
|
|
||
|
|
1. Sidebar: Up/Down wrap. Right → first [C]. Left → nothing.
|
||
|
|
2. Grid: arrows move between [C] spatially. No wrap at edges.
|
||
|
|
3. Left from leftmost [C] → Sidebar active tab.
|
||
|
|
4. Up from top-row [C] → [N] nav bar (if page has one), else nothing.
|
||
|
|
5. Enter on [C]: has link → navigate. No link → drill into [Y].
|
||
|
|
6. Inside [Y]: arrows move between inner controls. Escape → back to [C].
|
||
|
|
7. Escape from [C] → Sidebar.
|
||
|
|
8. No dead ends.
|