tremor-design-system
Tremor Design System
Build production-grade dashboards and analytics interfaces using Tremor's React component library.
Version Detection
Tremor has two distribution models. Detect which the user's project uses before writing code:
-
Tremor Raw (tremor.so) — Copy-and-paste components into
src/components/- Imports:
import { AreaChart } from "@/components/AreaChart" - Requires: Tailwind CSS v4+, Radix UI, Recharts
- Styling: Standard Tailwind utility classes
- Imports:
-
Tremor NPM (npm.tremor.so) — NPM package
@tremor/react- Imports:
import { AreaChart, Card } from "@tremor/react" - Requires: Tailwind CSS v3.4+, Headless UI, Remix Icons
- Styling: Tremor-specific tokens (
text-tremor-content,dark:text-dark-tremor-content)
- Imports:
If unclear, ask the user. Default to Tremor Raw for new projects, as it is the actively developed version (acquired by Vercel in Jan 2025).
Workflow
- Determine version — Check imports,
package.json, or ask - Identify pattern — See references/dashboard-patterns.md for common layouts (KPI rows, chart sections, filtered tables, full dashboards)
- Select components — See references/component-catalog.md for the full component API
- Compose — Assemble using the patterns below
- Style — Apply Tailwind utilities consistent with the detected version
Key Principles
- Card is the atom: Almost every dashboard section wraps in
<Card>. KPIs, charts, tables, and forms all sit inside cards. - Grid layout: Use Tailwind grid (
grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6) for responsive dashboard layouts. Never hardcode widths. - Data shape convention: All chart components expect an array of objects. The
indexprop selects the x-axis key;categoriesselects the data series. - valueFormatter: Always provide a
valueFormatterfor charts displaying currency, percentages, or units. UseIntl.NumberFormatfor numbers. - Dark mode: All components support dark mode. For Tremor Raw, use standard
dark:prefixes. For NPM, usedark-tremor-*tokens. - "use client": Chart components use browser APIs (Recharts). In Next.js App Router, mark pages or components containing charts with
"use client".
Common Data Shape
// All charts expect this pattern
const chartdata = [
{ date: "Jan 23", Revenue: 2890, Costs: 2338 },
{ date: "Feb 23", Revenue: 2756, Costs: 2103 },
// ...
]
// index="date" → x-axis
// categories={["Revenue", "Costs"]} → data series
Quick Reference: Chart Selection
| Use Case | Component |
|---|---|
| Trends over time | AreaChart or LineChart |
| Category comparison | BarChart |
| Part-of-whole | DonutChart |
| Rankings | BarList |
| Budget/threshold | CategoryBar |
| Combined metrics | ComboChart (bar + line) |
| Inline sparkline | SparkAreaChart, SparkLineChart, SparkBarChart |
| Progress toward goal | ProgressBar, ProgressCircle |
| Uptime/status history | Tracker |
Formatting Conventions
- Use
Intl.NumberFormat("us")for US number formatting - Currency:
(n) => \$${Intl.NumberFormat("us").format(n)}`` - Percentage:
(n) => \${n}%`` - Compact:
(n) => \${Intl.NumberFormat("us", { notation: "compact" }).format(n)}``
References
- Full component API and props: references/component-catalog.md
- Dashboard composition patterns: references/dashboard-patterns.md
More from dodatech/approved-skills
playwright-local
|
58carbon-design-system
Build UIs using IBM's Carbon Design System. Use when the user requests Carbon-styled interfaces, IBM-style dashboards, enterprise UIs following Carbon conventions, or explicitly mentions Carbon, IBM design, or @carbon/react. Covers component usage, design tokens (color, typography, spacing, motion), theming (White, Gray 10, Gray 90, Gray 100), grid layout, and accessibility. Supports both artifact/HTML output (CDN-based) and full React project output (@carbon/react). Triggers include "Carbon", "IBM design system", "enterprise dashboard", "@carbon/react", "carbon components", or requests for IBM-style professional interfaces.
25fluent2-design-system
>
20business-intelligence
Expert business intelligence covering dashboard design, data visualization, reporting automation, and executive insights delivery.
9fixing-metadata
Ship correct, complete metadata.
9paid-ads
When the user wants help with paid advertising campaigns on Google Ads, Meta (Facebook/Instagram), LinkedIn, Twitter/X, or other ad platforms. Also use when the user mentions 'PPC,' 'paid media,' 'ad copy,' 'ad creative,' 'ROAS,' 'CPA,' 'ad campaign,' 'retargeting,' or 'audience targeting.' This skill covers campaign strategy, ad creation, audience targeting, and optimization.
8