AgentStack
MCP verified MIT Self-run

FluffyUI

mcp-odvcencio-fluffyui · by odvcencio

A Go TUI framework with widgets, FSS styling, accessibility, reactive state, web backends, and agent tooling.

No reviews yet
0 installs
16 views
0.0% view→install

Install

$ agentstack add mcp-odvcencio-fluffyui

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README — it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/mcp-odvcencio-fluffyui)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
12d ago

Declared compatibility

Claude CodeClaude DesktopCursorWindsurf

Compatibility is declared by the source manifest. End-to-end runtime verification is coming — see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps — measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of FluffyUI? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

FluffyUI

The most comprehensive TUI framework for Go.

88 widgets. CSS-like styling. Built-in accessibility. AI-ready.

[](https://pkg.go.dev/m31labs.dev/fluffyui) [](https://github.com/odvcencio/fluffyui/actions/workflows/ci.yml) [](https://github.com/odvcencio/fluffyui/actions/workflows/release.yml) [](https://goreportcard.com/report/github.com/odvcencio/fluffyui) [](LICENSE)

Agent Skill

Agents working with FluffyUI should use the using-fluffyui skill.

How does FluffyUI compare?

| Feature | FluffyUI | Bubble Tea | Textual | Ratatui | |---------|----------|------------|---------|---------| | Language | Go | Go | Python | Rust | | Widgets | 88 | ~15 | ~40 | ~15 | | CSS-like Styling | Yes (FSS) | No | Yes | No | | Layout Engine | Flexbox + Grid | Manual | CSS Grid | Manual | | Accessibility | ARIA + TTS | No | No | No | | AI Agent (MCP) | 145+ tools | No | No | No | | GPU Rendering | 4 backends | No | No | No | | Reactive State | Signal[T] | Elm (TEA) | Reactive | Manual | | Web Backend | WebSocket | No | textual-web | No | | Hot Reload | Yes | No | Yes | No |

Quick Start

package main

import "m31labs.dev/fluffyui/fluffy"

func main() {
    app, _ := fluffy.NewApp(
        fluffy.WithRoot(fluffy.VStack(
            fluffy.Label("Hello, FluffyUI!"),
            fluffy.PrimaryButton("Click me", func() {
                // Your logic here
            }),
        )),
    )
    app.Run()
}

Installation

go get m31labs.dev/fluffyui@latest

Requirements: Go 1.24 or later.

FluffyUI is released under the [MIT License](LICENSE).

Scaffold a new project:

go install m31labs.dev/fluffyui/cmd/fluffy@latest
fluffy create my-app --template full
cd my-app && go run .

Widget Catalog

88 widgets organized into six categories:

| Category | Count | Highlights | |----------|-------|------------| | Input | 18 | Button, Input, TextArea, Select, Slider, DatePicker, TimePicker, ColorPicker, TagInput, Rating | | Data | 14 | Table, DataGrid, List, Tree, DirectoryTree, Log, RichText, MarkdownViewer, Heatmap, Image | | Layout | 12 | Grid, Flex, Stack, Splitter, ScrollView, Panel, AspectRatio, Drawer, FocusTrap, Sidebar | | Navigation | 12 | Tabs, Menu, Breadcrumb, Stepper, CommandPalette, Accordion, Pagination, Link, SkipNav | | Feedback | 16 | Dialog, Alert, ToastStack, Spinner, Progress, Sparkline, BarChart, LineChart, Badge, Skeleton | | Utility | 16 | Inspector, DebugOverlay, PerformanceDashboard, VideoPlayer, Canvas, GPUCanvas, Tooltip, Popover |

Full catalog: [docs/widgets/overview.md](docs/widgets/overview.md)

Styling with FSS

FluffyUI's stylesheet language (FSS) brings CSS-like styling to the terminal with hot reload:

Button {
    background: #3b82f6;
    color: white;
    padding: 0 2;
    border: rounded;
}

Button:hover {
    background: #2563eb;
}

Button.danger {
    background: #ef4444;
}
app, _ := fluffy.NewApp(
    fluffy.WithStylesheet("styles.fss"),
)

Supports selectors, pseudo-classes, transitions, min/max sizing, flexbox properties, and live reload during development with fluffy dev.

Reactive State

Type-safe signals with automatic UI updates:

count := state.NewSignal(0)

// Derived values recompute automatically
doubled := state.NewComputed(func() int {
    return count.Get() * 2
})

// Widgets observe signals and re-render on change
count.Set(42) // UI updates automatically

Accessibility

ARIA roles, screen reader announcements, and TTS built into every widget:

// Every widget implements accessibility.Accessible
widget.AccessibleRole()   // "button", "textbox", "grid", ...
widget.AccessibleName()   // Human-readable label
widget.AccessibleState()  // Focused, selected, expanded, ...
  • 40+ ARIA roles (WAI-ARIA 1.2/1.3)
  • 14 extended ARIA properties
  • TTS backends: espeak, SSIP (Linux), say (macOS), SAPI (Windows)
  • Focus management with visible indicators
  • Screen reader announcements across 67+ widget interaction points

AI Agent Integration (MCP)

FluffyUI exposes 145+ MCP tools so AI agents can read, navigate, and control your TUI:

import "m31labs.dev/fluffyui/agent"

srv, _ := agent.NewServer(agent.ServerOptions{
    Addr: "unix:/tmp/fluffyui.sock",
    App:  app,
})
go srv.Serve(ctx)

Three transports (stdio, SSE, Unix socket), 52 read tools, 56+ write tools, batch execution, and a built-in agent cookbook. See the [AI Agent Tutorial](docs/tutorials/04-ai-agent-integration.md).

Graphics and Animation

  • Canvas API -- sub-cell drawing with Braille, Sextant, Quadrant, and ASCII blitters
  • GPU rendering -- Metal, OpenGL, WebGL, and Software backends
  • Animation -- tweens (10 easing functions), physics springs, particle systems
  • Transforms -- translate, rotate, scale with save/restore

More Features

  • Dev Loop -- hot-reload with fluffy dev -- go run .
  • Web Backend -- serve your TUI over WebSocket with auth and TLS
  • Keybindings -- registry-based commands with modes and stacking
  • Recording -- capture sessions as asciicast, export to video
  • Testing -- simulation backend for deterministic, headless tests
  • Clipboard -- OSC-52, platform tools, memory fallback (auto-detected)
  • i18n -- localization bundles and runtime wiring
  • Plugins -- lightweight registry for third-party widgets

Examples

go run ./examples/candy-wars       # Showcase trading game
go run ./examples/todo-app         # Full CRUD app
go run ./examples/dashboard        # Data visualization
go run ./examples/fireworks-demo   # 3D particle effects
go run ./examples/widget-gallery   # Complete widget sampler

38 example apps in examples/ covering every feature area. See [docs/EXAMPLES.md](docs/EXAMPLES.md) for the full list.

Documentation

| Guide | Description | |-------|-------------| | [Getting Started](docs/getting-started.md) | Installation and first app | | [Architecture](docs/architecture.md) | Core concepts and render pipeline | | [Widget Catalog](docs/widgets/overview.md) | All 88 widgets with usage | | [Styling (FSS)](docs/theming.md) | Stylesheets, themes, transitions | | [Accessibility](docs/accessibility.md) | Roles, announcements, TTS | | [Agent Integration](docs/tutorials/04-ai-agent-integration.md) | MCP tools and transports | | [Testing](docs/testing.md) | Simulation backend and helpers | | [Performance](docs/performance.md) | Profiling and optimization | | [Bubble Tea Migration](docs/migration/bubbletea.md) | Moving from Bubble Tea | | [API Reference](docs/api/index.md) | Package-level documentation |

Contributing

Contributions are welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) and [CODE_OF_CONDUCT.md](CODEOFCONDUCT.md).

License

See the repository for license information.

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.