Skip to Content
CMSDashboard

CMS dashboard

StatCard & KpiGrid

A KPI on a card surface, and the responsive grid to line several up.

💰Revenue128 400 Kč+12.5%
📦Orders1 203-2.1%
Conversion3.4 %+0.3 pp
import { KpiGrid, StatCard } from '@gg-software/cms'; <KpiGrid> <StatCard label="Revenue" value="128 400 Kč" delta={12.5} icon="💰" /> <StatCard label="Orders" value="1 203" delta={-2.1} footer={<a href="/orders">View orders</a>} /> </KpiGrid>;
PropTypeDefaultDescription
label*ReactNode—
value*ReactNode—
deltaStatDelta—a number renders "+n%"/"-n%" with an arrow; an object lets you customise
iconReactNode—
footerReactNode—small footer area (e.g. a "View report" link)
classNamestring—

* required · generated from packages/cms/src/dashboard/StatCard.tsx

PropTypeDefaultDescription
children*ReactNode—StatCards (or any widgets)
minCardWidthstring | number220cards auto-fill columns at least this wide (default 220)
gapSpaceValuemd
classNamestring—

* required · generated from packages/cms/src/dashboard/KpiGrid.tsx

ActivityFeed

Recent activity on ui’s Timeline; Date times render as “3 hours ago”.

  • Ada created order #1042
    2 minutes ago
  • Alan updated product “Keyboard”
    1 hour ago
  • Grace deleted a draft page
    yesterday
import { ActivityFeed } from '@gg-software/cms'; <ActivityFeed items={events.map((e) => ({ id: e.id, actor: e.user, action: e.summary, time: e.createdAt }))} max={10} />;
PropTypeDefaultDescription
items*ActivityItem[]—
maxnumber—show at most this many items
classNamestring—

* required · generated from packages/cms/src/dashboard/ActivityFeed.tsx

AuditLog

Change-history table with colored action badges and sortable columns.

ActionDetails
Jul 2, 2026, 10:15 AMada@acme.iocreateorder #1042—
Jul 2, 2026, 11:02 AMalan@acme.ioupdateproduct “Keyboard”price 990 → 890
Jul 2, 2026, 12:40 PMgrace@acme.iodeletepage “Old landing”—
import { AuditLog } from '@gg-software/cms'; <AuditLog entries={entries} pageSize={20} />;
PropTypeDefaultDescription
entries*AuditEntry[]—
pageSizenumber10
classNamestring—

* required · generated from packages/cms/src/dashboard/AuditLog.tsx