PHPackages                             jramke/fluid-primitives - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. jramke/fluid-primitives

ActiveTypo3-cms-extension[Utility &amp; Helpers](/categories/utility)

jramke/fluid-primitives
=======================

The headless component library for TYPO3 Fluid

0.17.2(1mo ago)874[5 issues](https://github.com/jramke/fluid-primitives/issues)GPL-2.0-or-laterPHPPHP &gt;=8.2CI passing

Since Oct 19Pushed 1mo agoCompare

[ Source](https://github.com/jramke/fluid-primitives)[ Packagist](https://packagist.org/packages/jramke/fluid-primitives)[ RSS](/packages/jramke-fluid-primitives/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (6)Versions (32)Used By (0)

[![The headless component library for TYPO3 Fluid](https://raw.githubusercontent.com/jramke/fluid-primitives.com/refs/heads/main/packages/docs/Resources/Public/Images/og-image.png)](https://raw.githubusercontent.com/jramke/fluid-primitives.com/refs/heads/main/packages/docs/Resources/Public/Images/og-image.png)

Fluid Primitives
================

[](#fluid-primitives)

Unstyled, flexible and accessible UI Primitives that provide a foundation for building your own component library in Fluid.

Fluid Primitives brings modern component patterns to TYPO3. Build accessible, composable UI components with the same developer experience you'd expect from React libraries like Radix or Base UI - but for Fluid templates.

Documentation
-------------

[](#documentation)

Full documentation can be found at [fluid-primitives.com](https://fluid-primitives.com).

What You Get
------------

[](#what-you-get)

**Accessible by default.** Every interactive component handles keyboard navigation, focus management, and ARIA attributes automatically via [Zag.js](https://zagjs.com/) state machines.

**Composable API.** No more prop drilling. Build complex UIs by composing small, focused parts that work together.

**Unstyled.** Zero design opinions. Use Tailwind, vanilla CSS, or any styling approach. You control every pixel.

**Server-rendered.** Components render on the server with PHP/Fluid, then hydrate on the client. No layout shift, great for SEO.

Quick Example
-------------

[](#quick-example)

A tooltip with full accessibility support in just a few lines:

```

    Hover me
    Tooltip content here

```

That's it. Keyboard support, focus handling, proper ARIA attributes - all handled.

Why This Exists
---------------

[](#why-this-exists)

TYPO3 Fluid lacked an elegant solution for building robust, interactive components. The typical approach leads to bloated templates with complex conditional logic, poor accessibility, and custom JavaScript that's hard to maintain.

Fluid Primitives solves this by bringing proven patterns from the modern frontend ecosystem to TYPO3, while respecting its server-first architecture.

Acknowledgments
---------------

[](#acknowledgments)

- [Zag.js](https://zagjs.com/) - The state machine foundation
- [Radix UI](https://www.radix-ui.com/primitives) - API design inspiration
- [Base UI](https://base-ui.com/) - Component behavior patterns
- [Ark UI](https://ark-ui.com/) - Zag.js integration patterns

Development
-----------

[](#development)

See [github.com/jramke/fluid-primitives.com](https://github.com/jramke/fluid-primitives.com) monorepo for the development setup.

###  Health Score

42

—

FairBetter than 89% of packages

Maintenance85

Actively maintained with recent releases

Popularity17

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 99.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~6 days

Total

26

Last Release

47d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e300e405a572ea4fe3baa89204dcf113c80d782887acf5051e603ffd84567b85?d=identicon)[jramke](/maintainers/jramke)

---

Top Contributors

[![jramke](https://avatars.githubusercontent.com/u/81250358?v=4)](https://github.com/jramke "jramke (165 commits)")[![Copilot](https://avatars.githubusercontent.com/in/1143301?v=4)](https://github.com/Copilot "Copilot (1 commits)")

---

Tags

component-libraryfluidheadlessprimitivestypo3zag-js

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/jramke-fluid-primitives/health.svg)

```
[![Health](https://phpackages.com/badges/jramke-fluid-primitives/health.svg)](https://phpackages.com/packages/jramke-fluid-primitives)
```

###  Alternatives

[fluidtypo3/flux

The flux package from FluidTYPO3

152982.2k20](/packages/fluidtypo3-flux)[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

96374.6k23](/packages/friendsoftypo3-content-blocks)[praetorius/vite-asset-collector

Use AssetCollector to embed frontend assets generated by vite

52255.0k1](/packages/praetorius-vite-asset-collector)[brotkrueml/schema

Embedding schema.org vocabulary - API and view helpers for schema.org markup

33584.6k13](/packages/brotkrueml-schema)[typo3/cms-install

TYPO3 CMS Install Tool - The Install Tool is used for installation, upgrade, system administration and setup tasks.

1811.5M308](/packages/typo3-cms-install)[typo3/cms-redirects

TYPO3 CMS Redirects - Create manual redirects, list existing redirects and automatically createredirects on slug changes.

167.0M55](/packages/typo3-cms-redirects)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
