symfinity / ux-blocks
UX Blocks base SDK — registry schema and Symfinity UI markup helpers for Symfony UX Twig components
v0.1.0
2026-06-13 23:16 UTC
Requires
- php: >=8.2
- symfony/config: ^7.4||^8.0
- symfony/dependency-injection: ^7.4||^8.0
- symfony/framework-bundle: ^7.4||^8.0
- symfony/http-kernel: ^7.4||^8.0
- symfony/yaml: ^7.4||^8.0
Requires (Dev)
- phpstan/phpstan: ^2.1
- phpstan/phpstan-symfony: ^2.0
- phpunit/phpunit: ^10.5 || ^11.0
Suggests
- symfinity/ui-action: Native HTTP action semantics for interactive blocks
- symfinity/ui-kernel: Token-driven role CSS and flavours when building styled blocks
- symfony/ux-icons: Icon set for roles that use ux:icon (optional per app)
This package is auto-updated.
Last update: 2026-06-13 23:20:07 UTC
README
UX Blocks
Registry schema and shared test helpers for the Symfinity UX Blocks component family
Note
Read-only mirror. See CONTRIBUTING.md.
Features
- Registry schema — version
1.1, default prefixblocks, fragment id helpers - Tier role catalogs — canonical role lists for core, extended, interactive, live, marketing, ecommerce, and lab packages
- PHPUnit assertions —
ChameleonMarkupAssertionsfordata-ui-role/data-ui-fragmentDOM checks - Slim SDK boundary — no Twig components here; tiers ship in
symfinity/ux-blocks-*packages - Symfony Flex recipe — bundle registered for all environments
Prerequisites
Add the symfinity/recipes Flex endpoint to your project's composer.json (see recipes README) — recipes are not in Symfony's official recipe repository yet.
Installation
composer require symfinity/ux-blocks
Usually installed as a dependency of a tier package. See Installation.
Quick Start
use Symfinity\UxBlocks\Registry\CoreRoleCatalog; use Symfinity\UxBlocks\Registry\RegistrySchema; $fragment = RegistrySchema::fragmentId('button'); // blocks.button $roles = CoreRoleCatalog::roles();
composer require symfinity/ux-blocks-core
See Quick start for PHPUnit markup assertions and tier pairing.
Documentation
- Quick start — registry helpers and test trait
- Installation — Flex and manual setup
- Configuration — no app YAML required
- Registry — schema, catalogs, markup contract
- Components — tier packages and styling
- Upgrade — first release notes
Requirements
- PHP 8.2 or higher
- Symfony 7.4 or 8.x