dashboard-ui
Skill0 starsChanged 3 months agoMITView on GitHub
Build or refine functional dashboards with compact shadcn UI, useful charts, tables, and reliable navigation. Use for analytics, monitoring, operations, resource management, or record-oriented dashboards, including email-style list-and-detail workspaces. Adapt the layout to the domain rather than assuming experiments or a fixed set of metrics.
3 other projects use a version of this.
Adopted by
Most recently taken up by
- openingax/dashboard-ui-skilltheir own version, first seen Oct 25, 2026
- ngxccc/engineered-skillstheir own version, first seen Oct 13, 2026
- desplega-ai/agent-swarmtheir own version, first seen Sep 14, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- desplega-ai/agent-swarm★ 1ksame name
- ngxccc/engineered-skills★ 0same name
- openingax/dashboard-ui-skill★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository9 other files it gives its agents.
- babysitSkill
- factorySkill
- lab-notebookSkill
- oliverspec-applySkill
- oliverspec-babysitSkill
- oliverspec-exploreSkill
- oliverspec-proposeSkill
- oliverspec-scopeSkill
- oliverspec-shipSkill
The file
We split this skill into the rules it gives an agent
10 rules. About 0 are common, 9 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈9
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 28
Use the user's preferred shadcn preset b7BFgTmLK: Nova/Mist, Geist, Lucide, neutral surfaces, subtle/translucent menus.
- Distinctive: line 29
Use generated shadcn primitives for controls, navigation, tables, tabs, sheets, tooltips, and charts.
- Distinctive: line 30
Keep the interface functional: useful labels and section titles, no hero, marketing copy, oversized page heading, decorative slogans, or …
- Distinctive: line 31
Use compact, aligned controls, restrained borders, quiet status badges, tabular numbers, and consistent spacing.
- Distinctive: line 32
Treat widths and heights as deliberate layout decisions.
- Distinctive: line 33
Use theme tokens throughout.
- Distinctive: line 35
Read shadcn implementation before installing primitives or applying the preset.
- Distinctive: line 53
Read data and charts when building metrics, comparisons, or visualizations.
- Distinctive: line 61
When a local preview needs to remain available, use the environment's persistent process mechanism, record its URL and logs, and verify …
- Distinctive: line 63
Keep documentation with the behavior it describes.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Dashboard UI
Build a working dashboard that helps the user inspect data, understand changes, and take the next relevant action. This skill captures a preference for compact, utilitarian shadcn interfaces. It is a design and implementation workflow, not a particular application's schema or backend.
Choose the structure from the task
Identify the main question, the objects being inspected, the useful level of detail, and the actions the user needs. Infer these from the request and existing application before asking questions. Distinguish a working integration from a fixture-backed prototype; label fixture data and do not present unimplemented controls as functional.
Choose the smallest useful structure:
| Primary task | Starting layout |
| Browse records and inspect one in depth | Persistent list on the left, selected record in the main pane; use the sidebar-09 email-list pattern. |
| Monitor aggregate health or trends | Overview with shared scope/time controls, a small set of meaningful metrics, charts, and drill-down tables. |
| Compare entities, periods, or configurations | Explicit comparison selectors, aligned measures, deltas, and access to underlying rows. |
| Review and act on many items | Dense filterable table or queue with selection and the domain's real actions. |
| Work across several distinct areas | Minimal navigation around the appropriate views above. |
Combine these when the workflow needs it. Do not force a record sidebar onto an aggregate dashboard, add an icon rail for nonexistent sections, or invent comparison and review workflows. Read layout patterns when deciding composition or implementing navigation.
Visual defaults
- Use the user's preferred shadcn preset
b7BFgTmLK: Nova/Mist, Geist, Lucide, neutral surfaces, subtle/translucent menus. This is the starting preference for a new dashboard, not authorization to replace an established application's design system. Explicit user choices take precedence. - Use generated shadcn primitives for controls, navigation, tables, tabs, sheets, tooltips, and charts. Compose semantic HTML around them. Do not approximate a Select with a native select or restyle a homemade component until it merely resembles shadcn.
- Keep the interface functional: useful labels and section titles, no hero, marketing copy, oversized page heading, decorative slogans, or redundant introductions. Do not remove labels people need to understand controls.
- Use compact, aligned controls, restrained borders, quiet status badges, tabular numbers, and consistent spacing. Prefer small table section headings; avoid padding-heavy cards around every fragment of data.
- Treat widths and heights as deliberate layout decisions. Inputs should fit their jobs; selectors need a constrained trigger and a menu wide enough to read options. Long names and identifiers must not push the page sideways.
- Use theme tokens throughout. Check light and dark modes, including portaled menus, focus rings, chart axes, and selected rows. Use semantic emphasis rather than coloring every metric.
Read shadcn implementation before installing primitives or applying the preset. Preserve the requested preset across every added component and its supporting CSS; do not mix styles from unrelated snippets.
Build the behavior with the view
Keep data loading and routing separate from presentational views so realistic states can be rendered without production access. Reuse the project's framework, router, data client, and test conventions. This skill does not require Vite, Next.js, a particular database, a local server, or any storage provider.
For record workspaces, use real addressable links, a visible selected row, and independent pane scrolling. Keep list filters and selection in a stable owner outside a mobile Sheet's mounted content. A new response or newly discovered record must not steal the current selection. Resolve direct URLs before choosing a default record, and preserve browser back/forward behavior.
Make the distinction between initial loading, background refresh, no records, no filter matches, missing measurements, and failed requests visible. Preserve useful loaded data during refresh when appropriate. Use cancellation and stale-response guards so a slow request cannot overwrite a newer selection. Only describe data as live if the actual source refreshes; distinguish a remote snapshot from continuous updates.
Keep controls connected to real behavior. Scope filters should affect the charts and tables they claim to affect. Preserve normal modified-click/open-in-new-tab behavior for links. Use accessible names, keyboard interaction, focus states, and a workable narrow-screen navigation path. Authorized edits and writes belong to the requested workflow; a dashboard task does not by itself authorize deployment, publishing, messaging, or production mutations.
Make charts explain something
Choose a chart because it answers a concrete question that a table or badge does not answer as clearly. Avoid decorative graphs and charts that only repeat a nearby status count. Do not require charts on every tab.
Use shadcn chart containers and tooltips with the project's chart library. Label units, scope, aggregation, and time window where they affect interpretation. Keep exact values and supporting records available through a table, detail view, or accessible equivalent. Preserve legitimate zero and negative values; missing data is not zero. Never invent trend history or telemetry to fill space.
Read data and charts when building metrics, comparisons, or visualizations. Keep all domain formulas and thresholds specific to the current application.
Verify the finished interface
Render the actual views, not just isolated primitives. Use Storybook when available; otherwise use the application's preview and appropriate fixtures. Inspect the states affected by the change: representative data, loading, empty/filter-empty, failure, incomplete measurements, long labels, selected records, dark mode, and narrow widths. Exercise menus, filtering, navigation, scrolling, and refresh behavior where relevant.
Test meaningful behavior and data transformations: filter consistency, selection stability, request races, aggregation, missing values, or comparison compatibility. Do not add tests that merely restate a class name or mirror a trivial visual edit. Run the project's relevant type-check/build/tests and any required documentation checks. Fix observed defects, then stop expanding validation when the requested behavior is verified.
When a local preview needs to remain available, use the environment's persistent process mechanism, record its URL and logs, and verify both the page and data endpoint. Do not claim a temporary process will stay up indefinitely.
Keep documentation with the behavior it describes. Write Markdown prose as one source line per paragraph or list item, with structural line breaks for headings, lists, tables, and code. Finish with the implemented behavior, where to see it, and concise validation evidence.
Optional starting asset
For a list-and-detail dashboard, DashboardWorkspace.tsx supplies a domain-neutral shadcn shell with a persistent desktop sidebar, mobile drawer, independent content scrolling, and a navigation-close callback. Adapt it to the project's aliases, layout ownership, router, and component APIs. It contains no record schema, API calls, metrics, or domain labels. For overview dashboards, use the layout guidance instead of copying this shell unnecessarily.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

