[ {"id": "home", "title": "Home", "icon": "\ud83c\udfe0", "desc": "Clock, weather, now playing and PC tiles.", "widgets": [{"type": "clock", "x": 0, "y": 0, "w": 6, "h": 4, "options": {"status": true, "weather": true}}, {"type": "media", "x": 6, "y": 0, "w": 6, "h": 4}, {"type": "stat", "x": 0, "y": 4, "w": 3, "h": 2, "options": {"metric": "cpu"}}, {"type": "stat", "x": 3, "y": 4, "w": 3, "h": 2, "options": {"metric": "gpu"}}, {"type": "stat", "x": 6, "y": 4, "w": 3, "h": 2, "options": {"metric": "ram"}}, {"type": "stat", "x": 9, "y": 4, "w": 3, "h": 2, "options": {"metric": "net"}}]}, {"id": "ai", "title": "AI quotas", "icon": "\u2733\ufe0f", "desc": "Claude and Codex usage limits.", "widgets": [{"type": "quotas", "x": 0, "y": 0, "w": 12, "h": 6, "options": {"providers": ["claude", "codex", "antigravity"], "rotate": true, "pageSize": 2, "rotateInterval": 8}}]}, {"id": "codexbar", "title": "CodexBar", "icon": "\ud83e\udded", "desc": "AI provider quotas, reset times and burn rates from CodexBar.", "widgets": [{"type": "quotas", "x": 0, "y": 0, "w": 12, "h": 6, "options": {"providers": ["claude", "codex", "antigravity"], "rotate": true, "pageSize": 2, "rotateInterval": 8}}]}, {"id": "work", "title": "Sessions", "icon": "\ud83e\udd16", "desc": "AI coding sessions and GitHub.", "widgets": [{"type": "sessions", "x": 0, "y": 0, "w": 7, "h": 6}, {"type": "github", "x": 7, "y": 0, "w": 5, "h": 6}]}, {"id": "system", "title": "System", "icon": "\ud83d\udcca", "desc": "CPU, GPU, memory and network charts.", "widgets": [{"type": "chart", "x": 0, "y": 0, "w": 6, "h": 3, "options": {"metrics": ["cpu"]}}, {"type": "chart", "x": 6, "y": 0, "w": 6, "h": 3, "options": {"metrics": ["gpu"]}}, {"type": "meters", "x": 0, "y": 3, "w": 6, "h": 3}, {"type": "chart", "x": 6, "y": 3, "w": 6, "h": 3, "options": {"metrics": ["down", "up"]}}]}, {"id": "procs", "title": "Processes", "icon": "\u2699\ufe0f", "desc": "Heaviest apps, end one instance or all.", "widgets": [{"type": "processes", "x": 0, "y": 0, "w": 12, "h": 6}]}, {"id": "deck", "title": "Shortcuts", "icon": "\ud83c\udf9b\ufe0f", "desc": "Stream Deck–style keys.", "widgets": [{"type": "shortcuts", "x": 0, "y": 0, "w": 12, "h": 6, "options": {"columns": 4}}]}, {"id": "music", "title": "Music", "icon": "\ud83c\udfb5", "desc": "Big now-playing card with clock and forecast.", "widgets": [{"type": "media", "x": 0, "y": 0, "w": 8, "h": 6}, {"type": "clock", "x": 8, "y": 0, "w": 4, "h": 2, "options": {"status": false, "weather": false}}, {"type": "forecast", "x": 8, "y": 2, "w": 4, "h": 4, "options": {"mode": "daily"}}]}, {"id": "clock", "title": "Clock", "icon": "\ud83d\udd70\ufe0f", "desc": "Full-screen clock with world clocks.", "widgets": [{"type": "clock", "x": 0, "y": 0, "w": 12, "h": 4, "options": {"status": false, "weather": true}}, {"type": "worldclock", "x": 0, "y": 4, "w": 12, "h": 2}]}, {"id": "focus", "title": "Focus", "icon": "\ud83c\udf45", "desc": "Pomodoro timer, note and clock.", "widgets": [{"type": "pomodoro", "x": 0, "y": 0, "w": 5, "h": 6}, {"type": "note", "x": 5, "y": 0, "w": 7, "h": 4, "options": {"text": "Today:\n• \n• \n• "}}, {"type": "clock", "x": 5, "y": 4, "w": 7, "h": 2, "options": {"status": false, "weather": false}}]}, {"id": "world", "title": "World", "icon": "\ud83c\udf0d", "desc": "World clocks, forecast and calendar.", "widgets": [{"type": "worldclock", "x": 0, "y": 0, "w": 12, "h": 2}, {"type": "forecast", "x": 0, "y": 2, "w": 8, "h": 4, "options": {"mode": "hourly"}}, {"type": "calendar", "x": 8, "y": 2, "w": 4, "h": 4}]}, {"id": "dashboard", "title": "Dashboard", "icon": "\ud83e\udded", "desc": "Gauges, clock, media and a few keys.", "widgets": [{"type": "clock", "x": 0, "y": 0, "w": 4, "h": 3, "options": {"status": false, "weather": true}}, {"type": "gauge", "x": 4, "y": 0, "w": 2, "h": 3, "options": {"metric": "cpu"}}, {"type": "gauge", "x": 6, "y": 0, "w": 2, "h": 3, "options": {"metric": "gpu"}}, {"type": "gauge", "x": 8, "y": 0, "w": 2, "h": 3, "options": {"metric": "ram"}}, {"type": "gauge", "x": 10, "y": 0, "w": 2, "h": 3, "options": {"metric": "gputemp"}}, {"type": "media", "x": 0, "y": 3, "w": 6, "h": 3}, {"type": "shortcuts", "x": 6, "y": 3, "w": 6, "h": 3, "options": {"columns": 3}}]}, {"id": "devops", "title": "DevOps", "icon": "\ud83d\udee0\ufe0f", "desc": "Command widgets, sessions and GitHub.", "widgets": [{"type": "command", "x": 0, "y": 0, "w": 4, "h": 2, "options": {"title": "Docker containers", "command": "(docker ps -q 2>$null | Measure-Object).Count", "interval": 30, "commandUnix": "docker ps -q 2>/dev/null | wc -l | tr -d ' '"}}, {"type": "command", "x": 4, "y": 0, "w": 4, "h": 2, "options": {"title": "Free disk space", "command": "'{0:N0} GB' -f ((Get-PSDrive C).Free / 1GB)", "interval": 120, "commandUnix": "df -h / | awk 'NR==2{print $4}'"}}, {"type": "gauge", "x": 8, "y": 0, "w": 2, "h": 2, "options": {"metric": "cpu"}}, {"type": "gauge", "x": 10, "y": 0, "w": 2, "h": 2, "options": {"metric": "ram"}}, {"type": "sessions", "x": 0, "y": 2, "w": 7, "h": 4}, {"type": "github", "x": 7, "y": 2, "w": 5, "h": 4}]}, {"id": "feeds", "title": "Feeds", "icon": "\ud83d\udce1", "desc": "Values and notifications pushed in through the webhook API.", "widgets": [{"type": "push", "x": 0, "y": 0, "w": 3, "h": 2, "options": {"key": "temperature", "title": "Room", "unit": "°C"}}, {"type": "push", "x": 3, "y": 0, "w": 3, "h": 2, "options": {"key": "build", "title": "Build"}}, {"type": "push", "x": 6, "y": 0, "w": 3, "h": 2, "options": {"key": "deploy", "title": "Deploy"}}, {"type": "push", "x": 9, "y": 0, "w": 3, "h": 2, "options": {"key": "progress", "title": "Progress", "style": "gauge", "unit": "%"}}, {"type": "push", "x": 0, "y": 2, "w": 6, "h": 4, "options": {"key": "todo", "title": "To do", "style": "list"}}, {"type": "inbox", "x": 6, "y": 2, "w": 6, "h": 4}]}, {"id": "ambient", "title": "Ambient", "icon": "\ud83c\udf05", "desc": "Analog clock, sun & moon, air quality, a quote and the week's weather.", "widgets": [{"type": "analog", "x": 0, "y": 0, "w": 4, "h": 6, "options": {"numbers": true}}, {"type": "sun", "x": 4, "y": 0, "w": 4, "h": 3}, {"type": "air", "x": 4, "y": 3, "w": 4, "h": 3}, {"type": "quote", "x": 8, "y": 0, "w": 4, "h": 3}, {"type": "forecast", "x": 8, "y": 3, "w": 4, "h": 3, "options": {"mode": "daily"}}]}, {"id": "markets", "title": "Markets", "icon": "\ud83d\udcb1", "desc": "Exchange rates, crypto prices and Hacker News.", "widgets": [{"type": "exchange", "x": 0, "y": 0, "w": 6, "h": 3}, {"type": "crypto", "x": 6, "y": 0, "w": 6, "h": 3}, {"type": "hackernews", "x": 0, "y": 3, "w": 12, "h": 3}]}, {"id": "daily", "title": "Daily", "icon": "\u2705", "desc": "Checklist, time progress, a quick timer, a stopwatch and a counter.", "widgets": [{"type": "checklist", "x": 0, "y": 0, "w": 4, "h": 6}, {"type": "progress", "x": 4, "y": 0, "w": 4, "h": 3}, {"type": "timer", "x": 8, "y": 0, "w": 4, "h": 3}, {"type": "counter", "x": 4, "y": 3, "w": 3, "h": 3}, {"type": "stopwatch", "x": 7, "y": 3, "w": 5, "h": 3}]}, {"id": "status", "title": "Status", "icon": "\ud83c\udfaf", "desc": "Quota rings, phone battery, top processes, volume and sessions.", "widgets": [{"type": "quotaring", "x": 0, "y": 0, "w": 3, "h": 3, "options": {"provider": "claude", "limit": "0"}}, {"type": "quotaring", "x": 3, "y": 0, "w": 3, "h": 3, "options": {"provider": "claude", "limit": "1"}}, {"type": "quotaring", "x": 6, "y": 0, "w": 3, "h": 3, "options": {"provider": "codex", "limit": "0"}}, {"type": "battery", "x": 9, "y": 0, "w": 3, "h": 3}, {"type": "topprocs", "x": 0, "y": 3, "w": 5, "h": 3}, {"type": "volume", "x": 5, "y": 3, "w": 2, "h": 3}, {"type": "sessions", "x": 7, "y": 3, "w": 5, "h": 3}]}, {"id": "calm", "title": "Calm", "icon": "\ud83e\udec1", "desc": "Breathing exercise, a clock face and a quote.", "widgets": [{"type": "breathe", "x": 0, "y": 0, "w": 7, "h": 6}, {"type": "analog", "x": 7, "y": 0, "w": 5, "h": 4}, {"type": "quote", "x": 7, "y": 4, "w": 5, "h": 2}]}, {"id": "nightstand", "title": "Nightstand", "icon": "\ud83d\udecf\ufe0f", "desc": "The time in words, the moon, tomorrow's weather and the phone's battery.", "widgets": [{"type": "wordclock", "x": 0, "y": 0, "w": 8, "h": 4}, {"type": "moon", "x": 8, "y": 0, "w": 4, "h": 2}, {"type": "chargecare", "x": 8, "y": 2, "w": 4, "h": 2}, {"type": "forecast", "x": 0, "y": 4, "w": 12, "h": 2}]}, {"id": "planner", "title": "Planner", "icon": "\ud83d\uddd3\ufe0f", "desc": "Next event, this month, the agenda and a daily checklist.", "widgets": [{"type": "nextup", "x": 0, "y": 0, "w": 4, "h": 3}, {"type": "calendar", "x": 0, "y": 3, "w": 4, "h": 3}, {"type": "agenda", "x": 4, "y": 0, "w": 4, "h": 6}, {"type": "checklist", "x": 8, "y": 0, "w": 4, "h": 6, "options": {"title": "Today", "daily": true}}]}, {"id": "automation", "title": "Automation", "icon": "\u26a1", "desc": "Your rules and what they push: on-air sign, webhook values and the notification inbox.", "widgets": [{"type": "rules", "x": 0, "y": 0, "w": 4, "h": 6}, {"type": "onair", "x": 4, "y": 0, "w": 4, "h": 2}, {"type": "push", "x": 4, "y": 2, "w": 2, "h": 2, "options": {"key": "temperature", "title": "Temperature", "unit": "°C"}}, {"type": "push", "x": 6, "y": 2, "w": 2, "h": 2, "options": {"key": "build", "title": "Build"}}, {"type": "batteries", "x": 4, "y": 4, "w": 4, "h": 2}, {"type": "inbox", "x": 8, "y": 0, "w": 4, "h": 6}]}, {"id": "weekend", "title": "Weekend", "icon": "\ud83c\udfd6\ufe0f", "desc": "Weather for the days ahead, music, the moon, the time around the world and a quote.", "widgets": [{"type": "forecast", "x": 0, "y": 0, "w": 6, "h": 3}, {"type": "media", "x": 6, "y": 0, "w": 6, "h": 3}, {"type": "moon", "x": 0, "y": 3, "w": 4, "h": 3}, {"type": "analog", "x": 4, "y": 3, "w": 3, "h": 3}, {"type": "quote", "x": 7, "y": 3, "w": 5, "h": 3}]}, {"id": "focuswork", "title": "Deep work", "icon": "\ud83c\udfa7", "desc": "A focus timer, what is next on the calendar, the AI sessions and your quota.", "widgets": [{"type": "pomodoro", "x": 0, "y": 0, "w": 4, "h": 4}, {"type": "nextup", "x": 0, "y": 4, "w": 4, "h": 2}, {"type": "sessions", "x": 4, "y": 0, "w": 5, "h": 6}, {"type": "quotaring", "x": 9, "y": 0, "w": 3, "h": 3}, {"type": "rules", "x": 9, "y": 3, "w": 3, "h": 3}]}, {"id": "audio-deck", "title": "Audio deck", "icon": "\ud83c\udf9b\ufe0f", "desc": "Audio deck with configurable controls.", "widgets": [{"type": "audio-mixer", "x": 0, "y": 0, "w": 6, "h": 6}, {"type": "microphone", "x": 6, "y": 0, "w": 6, "h": 3}, {"type": "media-remote", "x": 6, "y": 3, "w": 6, "h": 3}]}, {"id": "stream-deck", "title": "Streaming deck", "icon": "\ud83c\udf9b\ufe0f", "desc": "Streaming deck with configurable controls.", "widgets": [{"type": "obs-scenes", "x": 0, "y": 0, "w": 6, "h": 6}, {"type": "obs-mixer", "x": 6, "y": 0, "w": 6, "h": 3}, {"type": "obs-recording", "x": 6, "y": 3, "w": 6, "h": 3}]}, {"id": "meeting-deck", "title": "Meeting deck", "icon": "\ud83c\udf9b\ufe0f", "desc": "Meeting deck with configurable controls.", "widgets": [{"type": "meeting-controls", "x": 0, "y": 0, "w": 6, "h": 6}, {"type": "meeting-status", "x": 6, "y": 0, "w": 6, "h": 3}, {"type": "meeting-timer", "x": 6, "y": 3, "w": 6, "h": 3}]}, {"id": "development-deck", "title": "Development deck", "icon": "\ud83c\udf9b\ufe0f", "desc": "Development deck with configurable controls.", "widgets": [{"type": "task-runner", "x": 0, "y": 0, "w": 6, "h": 6}, {"type": "dev-servers", "x": 6, "y": 0, "w": 6, "h": 3}, {"type": "docker", "x": 6, "y": 3, "w": 6, "h": 3}]}, {"id": "music-deck", "title": "Music deck", "icon": "\ud83c\udf9b\ufe0f", "desc": "Music deck with configurable controls.", "widgets": [{"type": "media-remote", "x": 0, "y": 0, "w": 6, "h": 6}, {"type": "media-queue", "x": 6, "y": 0, "w": 6, "h": 3}, {"type": "soundboard", "x": 6, "y": 3, "w": 6, "h": 3}]}, {"id": "system-deck", "title": "Computer controls", "icon": "\ud83c\udf9b\ufe0f", "desc": "Computer controls with configurable controls.", "widgets": [{"type": "app-dock", "x": 0, "y": 0, "w": 6, "h": 6}, {"type": "brightness", "x": 6, "y": 0, "w": 6, "h": 3}, {"type": "audio-profiles", "x": 6, "y": 3, "w": 6, "h": 3}]} ]