Skip to content

xnnnc/undash

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

undash — stop defaulting to dashboards

undash

Stop defaulting to dashboards.
1 skill. 8 UI patterns. 9 AI coding tools.

Installation · The Problem · The 8 Patterns · Supported Tools · How It Works · License


The Problem

Every AI coding tool defaults to dashboards. Ask for an "analytics view" — you get a dashboard. Ask for an "admin panel" — dashboard. "Monitoring page" — dashboard with gauges.

Dashboards dominate training data. They're correct about 20% of the time. The other 80%, there's a better pattern.

undash forces pattern selection before any design happens.

The 8 Patterns

Pattern When To Use Instead Of
Ephemeral / Generative Ad-hoc reports, data exploration Dashboard + charts
Conversational Support tools, multi-intent queries Dashboard + chat sidebar
Task-Based / Wizard Onboarding, CRUD admin, configuration Dashboard + tables
Decision Engine Ops tools, approve/reject workflows Dashboard + action buttons
Narrative / Storytelling Briefings, analytics, executive views Dashboard + metric cards
Launchpad / Debugging Monitoring, incident response, QA Dashboard + gauges
Agentic Complex automation, delegated workflows Dashboard + AI panel
Invisible / Ambient Contextual info in existing tools Dashboard in a new tab

How It Works

undash has three entry paths depending on how it's invoked:

No Input (bare invocation)

When invoked without a specific request, undash scans your existing project and offers two options:

  • Option 1: Dashboard Cleanup — keep your dashboard structure, fix the AI slop (visual hierarchy, inline actions, meaningful colors)
  • Option 2: Full Pattern Replacement — run a deep diagnostic to determine if a dashboard is even the right pattern

UI Design Request

When given a design request (e.g., "build me a monitoring dashboard"), undash runs the full 7-step diagnostic:

  1. Pause — don't start designing
  2. Diagnose — run a 7-question diagnostic to identify the user's actual need
  3. Select — choose the pattern with the highest signal
  4. Declare — tell the user what pattern and why, before any design work
  5. Generate — build the interface using the selected pattern

Explicit Pattern

When a specific pattern is named (e.g., "use narrative pattern"), undash skips straight to generation.

The diagnostic asks questions like:

  • What does the user DO after seeing this information?
  • Is the layout the same every time?
  • How many distinct things need to be shown simultaneously?
  • Would a well-written Slack message make this unnecessary?

Installation

Windows users: Use xcopy or copy instead of cp, or run the commands in Git Bash / WSL.

Claude Code (Recommended)

# Add the marketplace, then install
/plugin marketplace add xnnnc/undash
/plugin install undash

Or install directly by cloning:

git clone https://github.com/xnnnc/undash.git
claude --plugin-dir ./undash

Or copy manually:

# macOS / Linux
cp -r .claude/skills/undash your-project/.claude/skills/

# Windows (CMD)
xcopy .claude\skills\undash your-project\.claude\skills\undash /E /I

Codex CLI

# macOS / Linux
cp integrations/codex-cli/AGENTS.md your-project/AGENTS.md

# Windows (CMD)
copy integrations\codex-cli\AGENTS.md your-project\AGENTS.md

Gemini CLI

# macOS / Linux
cp integrations/gemini-cli/GEMINI.md your-project/GEMINI.md

# Windows (CMD)
copy integrations\gemini-cli\GEMINI.md your-project\GEMINI.md

Cursor

# macOS / Linux
cp -r integrations/cursor/.cursor your-project/

# Windows (CMD)
xcopy integrations\cursor\.cursor your-project\.cursor /E /I

Google Antigravity

# macOS / Linux
cp integrations/antigravity/AGENTS.md your-project/AGENTS.md

# Windows (CMD)
copy integrations\antigravity\AGENTS.md your-project\AGENTS.md

Pi Coding Agent

# macOS / Linux
cp integrations/pi/undash.md your-project/.pi/skills/undash.md

# Windows (CMD)
copy integrations\pi\undash.md your-project\.pi\skills\undash.md

OpenCode / Crush

# macOS / Linux
cp integrations/opencode/AGENTS.md your-project/AGENTS.md

# Windows (CMD)
copy integrations\opencode\AGENTS.md your-project\AGENTS.md

Augment (Auggie CLI)

# macOS / Linux
cp integrations/augment/AGENTS.md your-project/AGENTS.md

# Windows (CMD)
copy integrations\augment\AGENTS.md your-project\AGENTS.md

T3 Code

# macOS / Linux
cp integrations/t3-code/AGENTS.md your-project/AGENTS.md

# Windows (CMD)
copy integrations\t3-code\AGENTS.md your-project\AGENTS.md

Note: Tools that use AGENTS.md (Codex, Augment, Antigravity, OpenCode, T3 Code) all read the same file. If you use multiple, you only need one AGENTS.md. If you already have an AGENTS.md, append the undash content as a new section.

Supported Tools

Tool Type Config File
Claude Code CLI .claude/skills/undash/SKILL.md
Codex CLI CLI AGENTS.md
Gemini CLI CLI GEMINI.md
Cursor IDE .cursor/rules/undash.mdc
Google Antigravity IDE AGENTS.md
Pi CLI .pi/skills/undash.md
OpenCode / Crush CLI AGENTS.md
Augment (Auggie) CLI + IDE AGENTS.md
T3 Code GUI AGENTS.md

Quick Reference

When you hear... don't build a dashboard. Build this instead:

User Says Use Instead
"Analytics dashboard" Narrative — lead with insights, not metric grids
"Admin panel" Wizard — guide users through CRUD tasks
"Monitoring dashboard" Launchpad — detect and investigate problems
"Reporting interface" Ephemeral — generate reports on demand
"Settings page" Wizard — group settings, validate as you go
"Data exploration tool" Ephemeral or Conversational
"AI chat interface" Conversational + Agentic
"Content moderation" Decision Engine — approve/reject queue
"Notification center" Ambient — deliver in context

When Dashboards ARE Right

Dashboards are correct when all five are true:

  1. User checks the same 3-5 metrics regularly
  2. The layout is stable — same widgets every time
  3. Metrics are independent (spatial arrangement matters)
  4. The user scans, not reads
  5. No immediate action is required

When building a legitimate dashboard: 5-widget maximum, one hero metric, contextual comparisons.

The AI Slop Checklist

When you choose Option 1 (Dashboard Cleanup), undash audits against these 7 items:

# Problem Fix
1 Metric Museum — all cards have equal visual weight Establish a hero metric, create 2-3 visual tiers
2 Passive Data — numbers without context Add comparisons, trend indicators, annotations
3 Generic Stat Cards — identical icon+number+label Differentiate by purpose, vary sizes
4 Cold Generic Palette — default dark/light theme Apply brand colors, use color meaningfully
5 No Action Path — display-only data Add inline actions, drill-down, quick-action buttons
6 Equal-Weight Layout — uniform grid Break the grid, vary sizes, group related widgets
7 Decorative Charts — charts a number could replace Remove, keep only where shape matters

Contributing

  1. Edit the core skill in .claude/skills/undash/SKILL.md and references/
  2. Update all integration files in integrations/ to stay in sync
  3. Verify no design-tool-specific names appear in skill or integration files
  4. Verify each pattern in references/pattern-catalog.md has three guidance sections: Code, Design, Real-World Examples

License

Apache 2.0. See LICENSE.

About

Stop defaulting to dashboards. 1 skill, 8 UI patterns, 9 AI coding tools.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors