v0.4 · React · PHP · Node

Build the app, not the plumbing.

64 small packages covering the parts every real app needs and nobody wants to write twice — data grids, spreadsheets, workflow engines, xlsx/pptx/docx writers, Stripe catalogs, feature gating. Install one or take the whole stack; every server capability ships for PHP and Node. Agent-friendly throughout, so you can hand the boring half over and stay in flow.

64 packages MIT licensed tailwindcss >= 4 React 19 · PHP 8.4
resources/js/Pages/DesignReview.tsxUTF-8 · TSX
// One surface. Two participants. import { ArtBoard, ArtPiece } from "@particle-academy/fancy-artboard"; import { registerArtboardBridge } from "@particle-academy/agent-integrations"; export default function DesignReview() { const [board, setBoard] = useState(initialBoard); return ( <ArtBoard value={board} onChange={setBoard}> <ArtPiece id="hero-v3" kind="jsx" /> </ArtBoard> ); }
agent · fancy-ui.mcpartboard_add_piece ✓
The family

25 UI packages. Lift any one out.

Not a monolith. Each ships on its own — npm or Packagist — and composes with the rest. Most apps reach for two or three. The companions below take the kit to 64 in total.

rFreact-fancy67 comps
Tailwind v4 + React component library — about 70 primitives.
typescriptnpm
Wbfancy-whiteboard6 comps
Transport-agnostic collaborative board — sticky notes, freeform pen, connectors, presence cursors.
typescriptnpm
Abfancy-artboard4 comps
Figma-style design canvas for Human+ UX — a pan/zoom board of image / HTML / live-JSX frames grouped into sections, with focus mode, drag-reorder, sticky notes, and PNG/HTML export.
typescriptnpm
fancy-flow5 comps
Headless workflow engine + an optional React Flow editor — six node kits, topological executor, and a FlowRunnerUx flow→UX bridge. The editor designs graphs; `/engine` runs them with zero React on a server, worker, or CLI (PHP twin: fancy-flow-php).
typescriptnpm
fxfancy-sheets2 comps
Full spreadsheet with formulas, multi-sheet workbooks, clipboard, CSV import/export.
typescriptnpm
fancy-slides7 comps
Presentation editor + web viewer — Google-Slides-style deck authoring with JSON-friendly schema, full keyboard viewer, and an agent bridge.
typescriptnpm
{ }fancy-code3 comps
Lightweight embedded code editor — custom engine, no Monaco / CodeMirror / Shiki.
typescriptnpm
CACatalog + FMS4 comps
Storefront + admin UI for subscriptions and metered features — pricing tables, a plan-comparison matrix, feature gating, and a plan/perks editor. Vendor the React block, or grab the Shop-n-Sub starter kit.
typescriptcomposer
>_fancy-term1 comp
Human+ Terminal — a controlled, themeable <Terminal> over xterm.js with hooks and an MCP-bridgeable surface agents read + drive.
typescriptnpm
FAfancy-tui52 comps
Ink components for Human+ terminal apps — consistent layout, controlled inputs, scrollback-safe conversations, and durable push + inbox MCP workflows.
typescriptnpm
FAfancy-diff1 comp
Human+ side-by-side document diff with hunk acceptance — a client-side, zero-dep diff engine or a git unified-diff datasource.
typescriptnpm
FAfancy-pixel1 comp
Embeddable Showcase verification badge + liveness/collection beacon — Badge / Mark / Beacon styles, placed or floating, Shadow-DOM isolated. Drops in via a <script> tag or mountPixel().
typescriptnpm
fancy-echarts3 comps
Typed React wrapper around Apache ECharts — every chart type from a single <EChart> component, lazy module registration, four built-in themes.
typescriptnpm
FAfancy-mlm-ui3 comps
React surfaces for the fancy-mlm referral engine — a controlled DownlineTree (unilevel / binary / matrix), a CommissionStatement ledger, and RankProgress toward the next tier. Pairs with particle-academy/fancy-mlm (PHP) or @particle-academy/fancy-mlm (Node).
typescriptnpm
FAfancy-git-ui8 comps
Controlled Human+ React surfaces for repositories, working trees, diffs, commits, branches, and pull/merge requests.
typescriptnpm
FAfancy-x-files-ui8 comps
react-fancy editor suite for the well-known + agent-facing files — controlled, JSON-friendly editors for robots.txt / security.txt / llms.txt / humans.txt / sitemap.xml / AGENTS, each with a live preview, plus a combined XFilesManager. Pairs with particle-academy/fancy-x-files (PHP) / @particle-academy/fancy-x-files (Node).
typescriptnpm
fancy-screens2 comps
Multi-screen application shell with cross-screen agent presence.
typescriptnpm
3Dfancy-3d2 comps
Engine-agnostic 3D core — Scene types, the <Canvas> surface, and a DOM/CSS-3D renderer. WebGL engines (Babylon, three.js, …) ship as sibling fancy-3d-* packages.
typescriptnpm
bJfancy-3d-babylon4 comps
Babylon.js adapter for fancy-3d — WebGL renderer + the React components (Stage, Monitor, Card3D, Screen) that mount onto a Babylon Scene.
typescriptnpm
FAfancy-3d-three4 comps
three.js adapter for fancy-3d — WebGL renderer + the React components (Stage, Monitor, Card3D) that mount onto a three.js Scene. Mirrors fancy-3d-babylon, three.js underneath.
typescriptnpm
FAfancy-map1 comp
Engine-agnostic Map — one <Map> API over OpenStreetMap (Leaflet) + Google Maps, live position tracking, and a Human+ MCP bridge for cohabited human/agent maps.
typescriptnpm
mcpagent-integrations5 comps
MCP-driven agent presence — micro-MCP server, bridges, presence layer, share relay.
typescriptnpm
iNfancy-inertia2 comps
Inertia.js bridge — schema-driven pages, useFancyForm(), SSR boundaries. Works with ANY Inertia backend (zero Laravel/PHP runtime deps), not just Laravel.
typescriptnpm
FAfancy-pwa1 comp
Installable + offline PWA layer — manifest, lean service worker, install/offline/update hooks, and a fancyPwa() Vite plugin. Framework-agnostic, SSR-safe.
typescriptnpm
FAfancy-cms-ui3 comps
EARLY-RELEASE BETA — WYSIWYG CMS editor (React) for the Stages doc model: three-pane layers / canvas / inspector editing where every mutation is one PageOp through a pure reducer, plus the CmsPage / CmsRegion renderers with $bind data fields; pairs with the particle-academy/fancy-cms PHP renderer. Expect rough edges and breaking 0.x changes — please report anything you hit at github.com/Particle-Academy/fancy-cms-ui/issues.
typescriptnpm
Human+ · live

Watch an agent work in the surface, not behind it.

When an agent moves a sticky, you see the cursor, the label, and the activity row — it's driving the real surface, not scraping a copy of it.

fancy.app · Human+ boardlive
GByouAIclaude
Cut the second CTA — it competes with the primary.
you · 12:04
Proposing a tighter hero grid. Confirm to apply?
claude · now
Brand gradient reads well in dark mode.
you · 12:01
claude
AI Agent activity
fancy-whiteboard · live tool calls this session
Proposed hero grid rework — awaiting confirmnow
Added note tighter hero grid0:03
Moved 2 stickies into the Hero cluster0:11
Read board state (3 clusters)0:18
whiteboard_*via micro-MCP server
Components

Real renders. Hover, click, type.

The actual @particle-academy/react-fancy 199+ primitives, from a button to a full spreadsheet. 28 render live right here; pick any name on the left.

Actions & control
Button01
Switch02
MultiSwitch03
Slider04
OtpInput05
Text & forms
Field + Input06
Textarea07
Select08
Autocomplete09
Pillbox10
Selection
Checkbox11
CheckboxGroup12
RadioGroup13
Feedback & status
Badge14
Callout15
Progress16
Skeleton17
Toast18
Tooltip19
Navigation
Tabs20
Breadcrumbs21
Pagination22
Data & people
Card23
Table24
Avatar25
Profile26
Separator27
StickyNote28

Button

The workhorse button — 18 colors, ghost / circle variants, loading, badge.

<Button />
Color
Ghost · circle · sizes
State · loading · disabled · badge
The Human+ contract

Three rules every component lives by.

Purely visual primitives owe only a great authoring surface. Anything stateful or interactive owes both — authorable and inhabitable.

01

Controlled, not captive

Anything an agent might read or write lives in value + onChange — no internal-only state. State is the contract; the UI just renders it.

valueonChangejson-friendly
02

Agents are participants

Every interactive surface exposes a register<Surface>Bridge that maps stable handles to MCP tools. Agents drive the component itself, not a DOM scrape of it.

mcpstable handlespresence
03

Transport-agnostic

The kit ships zero networking. Your app wires the realtime + relay layer; mutations broadcast AgentActivity so presence, undo, and coaching compose for free.

relayAgentActivityundo
Quick start

Two ways to add a component.

npm-install and import, or vendor the source with npx fancy-cli add. PHP packages: composer require. Either way, point your agent at the registry MCP — ui.particle.academy/mcp — and it returns the exact install commands.

Introduce your agent to Fancypoints it at the registry so it looks things up, not guesses
Get to know the Fancy UI suite from Particle Academy before we build anything.

It is a kit of ~64 small, independent packages for React, PHP and Node — UI
primitives, data grids, spreadsheets, workflow engines, whiteboards, xlsx/pptx/docx
writers, Stripe catalogs, feature gating, analytics. Most server capabilities ship
as a matched PHP and Node pair, so it fits whatever backend we are on.

First, get access to the registry so you can look things up instead of guessing.
Use whichever of these matches the client you are running in:

- Claude Code:
    /plugin marketplace add Particle-Academy/fancy-ui-plugin
    /plugin install fancy-ui@fancy-ui

- Codex:
    codex plugin marketplace add Particle-Academy/fancy-ui-codex-plugin
    codex plugin add fancy-ui@fancy-ui

- Any other MCP client — add the hosted server (streamable HTTP, no API key):
    https://ui.particle.academy/mcp

The plugins bundle the same registry tools plus skills for architecture,
components, design, realtime, SEO and SSR. The raw endpoint gives you the tools
alone, which is enough for everything below.

Then explore it before writing code:

    start_project          pick the stack — backend first
    list_components        everything available
    search_components      find one by concept ("data grid", "kanban")
    get_component          read the real source
    install_instructions   exact install commands
    list_nodes             workflow nodes for fancy-flow

Tell me what you found that fits, and what you would reach for. Full catalog:
https://ui.particle.academy/packages
1
Install the package
npm / pnpm / yarn — version-pinned.
// 1 · Install the package — import the component. $ npm install @particle-academy/react-fancy import { Badge } from "@particle-academy/react-fancy"; <Badge color="green" dot>Live</Badge>
2
Vendor the source
Copy it in — yours to read and edit.
# 2 · Vendor the source — copy it into your repo, own it. $ npx fancy-ui@latest add badge # → src/components/fancy/badge/ import { Badge } from "@/components/fancy/badge";
Or let your agent do it

There's a plugin for Claude Code and one for Codex — either wires up the hosted registry MCP and bundles skills for architecture, components, design, realtime, SEO and SSR. Any other MCP client drops the hosted server into its config; no API key. Your agent then calls list-components, search-components, and install-instructions against the live registry — no guessing from memory. MCP setup docs →

# Claude Code — registry MCP + skills /plugin marketplace add Particle-Academy/fancy-ui-plugin /plugin install fancy-ui@fancy-ui # Codex — the same, for the Codex CLI codex plugin marketplace add Particle-Academy/fancy-ui-codex-plugin codex plugin add fancy-ui@fancy-ui // Any other MCP client — wire the hosted server (no API key) { "mcpServers": { "fancy-ui": { "type": "http", "url": "https://ui.particle.academy/mcp" } } }