Skip to content
eased

Motion-first React blocks for SaaS analytics

Metrics, tables and settings for the admin every product needs, finished down to the empty state.

37 components today · 8 blocks on the way · all in Pro

Everything a SaaS admin dashboard template is made of

Each one is the real component, running. Open it for usage, props and its motion, then install it into your app with one command.

  • 001

    Pagination

    Free

    Numbered pages whose selected chip glides on a spring, with ellipses in a fixed number of slots so the width never changes, and a compact Page 3 of 12 variant.

  • 002

    Breadcrumb

    Free

    A trail from the root to the current page that folds its middle crumbs into a menu when it runs out of room, measured rather than guessed, with links that underline on hover.

  • A dropzone that wakes when files cross the page and lifts as they reach it.

  • 005

    Carousel

    Free

    A scroll-snap carousel with native momentum, mouse drag and arrow keys.

  • 006

    Tree

    Free

    A file tree whose folders open on a height spring as the chevron turns, both interruptible.

  • 010

    Undo Pill

    Free

    A pill that rises after a destructive action with a draining countdown ring.

  • A product tour whose scrim cutout springs between targets, morphing size and concentric radius while the tooltip re-anchors.

  • A grouped list where switching the grouping moves rows into their new groups with shared-layout motion and rolling counts.

  • A layout primitive that exposes outer, padding and inner radius as CSS variables so nested corners stay concentric.

  • 016

    Accordion

    Free

    Disclosures whose height springs open with no overshoot, content fading in as the height lands and the chevron turning on the same spring.

  • 018

    Avatar

    Free

    Avatar and AvatarGroup on Base UI Avatar: images fade in from a 4px blur once loaded so initials never flash; overlapping stacks with a cut-out ring spread apart on hover; the overflow count rolls.

  • 019

    Cells kit

    Free

    Table cells that make rows look finished: avatar with name, status badge, number with a rolling value and coloured delta, a progress meter that fills on view, a self-updating relative time, and a mono ID with a copy button.

  • 020

    Badge

    Free

    A status or count chip.

  • 021

    Button

    Free

    A Base UI button whose press scale depends on its width, whose label swaps with y + blur while the width springs, and whose loading spinner overlays the label so the width never changes.

  • A link preview that opens after a 300ms dwell and stays open while the pointer travels into it.

  • 025

    Input

    Free

    A Base UI text input whose focus is the border alone.

  • 026

    Kbd

    Free

    A keycap that presses down when the real key does: the face drops 1px onto its base and springs back on release.

  • Tabular digits that roll in the direction of change: a 9 → 0 carry rolls forward, a value that changes mid-roll redirects, new places fade in while the rest slide over.

  • 029

    Popover

    Free

    A panel that opens from its trigger's transform-origin with a 5px directional offset, closes at half the distance in 150ms, and reverses mid-flight.

  • A blur that ramps from 0 to 20px over 80px toward an edge, from stacked masked backdrop layers, for headers, bottom bars and composers.

  • A native scroller with a thin themed overlay scrollbar that thickens under the pointer, and edge fades that appear only when there is more to scroll.

  • A search input whose clear button pops in once there is text, whose ⌘K hint fades out on focus, and whose loading spinner sits in the icon slot so nothing shifts.

  • 035

    Segmented

    Free

    A single-choice segmented control whose thumb glides to the selection on a spring.

  • 037

    Skeleton

    Free

    Loading placeholders with one page-wide shimmer: every skeleton shares a viewport-space highlight and one phase, so a single band sweeps across all of them.

  • A table with click-to-sort headers: the arrow appears on header hover and previews the order, and on click every row glides from where it was to its new place while the arrow rotates on the same spring.

  • 039

    Spinner

    Free

    A quarter arc turning on a faint ring, the eased.dev status-badge mark.

  • 040

    Squircle

    Pro

    Superellipse corners: CSS corner-shape: superellipse(K) where supported, an identical measured clip-path elsewhere, with a hairline ring that follows the shape.

  • 041

    Table

    Free

    A premium hairline table on TanStack Table: half-pixel row rules, a quiet sentence-case header, numbers right-aligned on one edge, one emphasised cell per row, a sticky header, and dense or comfortable rows.

  • 042

    Tabs

    Free

    Tabs with a gliding indicator (underline or pill) and panels that cross-fade 6px in the direction of travel while their container's height springs.

  • 043

    Text Swap

    Free

    Change a label, status or short value with y + blur, and spring the width to fit, so neighbours glide instead of jumping.

  • Toggle buttons sharing one highlight: it travels between items in single mode, and pressed neighbours fuse into one shape in multiple mode.

  • 048

    Tooltip

    Free

    A short label that waits 400ms for the first trigger, then follows the pointer instantly across its neighbours.

  • 049

    Sparkline

    Free

    A word-sized line chart that draws in once, rings its newest point in the surface colour and morphs to new values from the shape on screen.

  • 050

    Bar Chart

    Pro

    Grouped or stacked bars that grow in with a 12ms stagger, glide a scrubbing band with rolling values, and morph keyed bars between ranges while the scale springs.

  • 051

    Stat Tile

    Pro

    A KPI tile: a rolling value, a delta that re-tints and turns its arrow (falls are warning, never danger) and a sparkline that morphs with the range.

  • Lines and areas that morph between ranges on shared x samples while the scale springs and gridlines slide; a gliding crosshair, a trailing tooltip that flips at the edge, legend toggles that flatten a series, a previous period dashed at 40%, and onActiveChange for a headline.

  • A macOS menu bar popover: a status item and a frosted panel whose arrow and panel are one shape, so one blur and one hairline follow the arrow.

Blocks for SaaS analytics, on the way

Full blocks composed from the components above, each with one signature moment. They land here, dated, as they release; the changelog has the schedule.

  • Coming

    Metrics Dashboard

  • Coming

    KPI Drilldown

  • Coming

    Workspace Sidebar

  • Coming

    Usage-based Pricing Calculator

  • Coming

    Command Palette (SaaS)

  • Coming

    Onboarding Checklist

  • Coming

    Billing Overview

  • Coming

    Data Table (full)

Install into your agent

Add the Eased MCP server and ask for what you are building. Its list and search tools take an industry, so your agent starts from the SaaS analytics set.

claude mcp add --transport http eased https://eased.dev/api/mcp

Then: list_components { "industry": "saas" }

Questions

Is this a SaaS admin dashboard template?

It is the parts a SaaS admin dashboard template is made of: 37 live components today, with blocks such as Metrics Dashboard, Workspace Sidebar and Command Palette on the way. You compose them in your own app, and the source lives in your repo, so it fits your product exactly.

What does Pro include?

Every Eased component and block, in every industry, now and in every future release, for one payment. Free components stay free under MIT.

How do updates arrive?

New components and blocks release on a dated schedule, listed in the changelog and its RSS feed. Install them with the shadcn CLI or through the MCP server whenever they suit you.

What is the stack?

React 19, Tailwind CSS v4 and Motion, installed with the shadcn CLI. Every component supports light and dark themes and reduced motion.

Everything for SaaS analytics, in Pro.

One payment for every component and block, in every industry, including each one still to come.

See pricing