## Modular Home Screen — Tile Architecture

How tiles flow from installation to the home screen

### Tile Sources & Rendering Order

Home Screen Grid Layout
Built-in Panels (sorted by navOrder)
💬
Messages
💡
Memory
✏️
Blog
📄
Files
📖
Skills
🧩
Extensions
⚙️
Settings
👥
Contacts
Installed Add-ons (sorted by install date)
🦙
Ollama
📚
Obsidian
☁️
Nextcloud
+
auto on install

### Data Flow

Panel Registry ─── getVisiblePanels() ──┐
│
~/.crow/installed.json ─── getNestData() ──┤
│
┌──────────────────────┘
▼
buildNestHTML()
├─ Panel tiles (indigo, by navOrder)
├─ Bundle tiles (purple, by installDate)
└─ MCP server tiles (purple, by installDate)

### Tile Type Rules

Panels (built-in)
Always shown. Sorted by navOrder. Link to `/dashboard/<id>`. Can be hidden via `hidden: true`.
Bundles (Docker)
Auto from installed.json. Status dot (running/stopped). Link to webUI or Extensions.
MCP Servers
Auto from installed.json. No status dot (not Docker). Link to Extensions panel.
Skills (no tile)
Pure markdown, no UI. Visible in Skills panel only.