Search by

silarhi / tabler-ux-components

guillaume-sainthillier

Tabler-flavored Twig UX components for Symfony, following the shadcn composition pattern.

Package info

github.com/silarhi/tabler-ux-components

Language:Twig

Type:symfony-bundle

pkg:composer/silarhi/tabler-ux-components

Statistics

Installs: 8

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 2

v0.8.0 2026-10-13 13:41 UTC

README

Latest Stable Version Total Downloads License PHP Version CI Status Coverage

Tabler UX Components

Tabler-flavored Twig UX components for Symfony.
Built on the shadcn/ui composition pattern: one all-in-one tag per component, plus sub-components when you need control.

📖 Documentation

Features

  • shadcn composition: an all-in-one tag (<twig:Tabler:Card title="…" />) plus, where it makes sense, sub-components (<twig:Tabler:Card:Header>, <twig:Tabler:Card:Body>…)
  • Block-mirrored props: on composite components, each prop has a matching Twig block; override one without rewriting the rest
  • html_cva() variants: classes are declared with html_cva(), Twig's take on shadcn's CVA
  • Plain Tabler markup: Tabler / Bootstrap 5 classes; the interactive components use the data-bs-* JavaScript of tabler.js
  • Any icon: Tabler Icons from the webfont, or any icon of Symfony UX Icons with a prefixed name (icon="lucide:circle-check")
  • Attribute forwarding: extra attributes (class, id, data-*…) are merged onto the root element
  • Template-only: anonymous Twig components, no PHP classes to register or configure

Requirements

  • PHP 8.2+
  • Symfony 6.4, 7.x or 8.x, with Symfony UX Twig Component 2.21+ / 3.x
  • Twig 3.15+ / 4.x, with twig/extra-bundle and twig/html-extra 3.12+ / 4.x
  • Tabler 1.6+ on the front-end: its CSS, tabler.js for the interactive components, and @tabler/icons-webfont for the icons (3.36.1+ for the filled icons)
  • Optional: Symfony UX Icons 2.17+ / 3.x, for icon names with an icon set prefix (lucide:circle-check)

Installation

composer require silarhi/tabler-ux-components

On ux-twig-component v3, twig_component needs some configuration: see Installation.

Prefer to own the templates? Copy the components into your app with the Symfony UX Toolkit instead: php bin/console ux:install alert --kit=github.com/silarhi/tabler-ux-kit.

Quick start

{# all-in-one #}
<twig:Tabler:Alert variant="success" title="Saved!" description="Your changes are live." />

{# composed #}
<twig:Tabler:Card>
    <twig:Tabler:Card:Header>
        <twig:Tabler:Card:Title>Danger zone</twig:Tabler:Card:Title>
        <twig:Tabler:Card:Actions>
            <twig:Tabler:Button variant="danger" size="sm">Delete</twig:Tabler:Button>
        </twig:Tabler:Card:Actions>
    </twig:Tabler:Card:Header>
    <twig:Tabler:Card:Body>This action cannot be undone.</twig:Tabler:Card:Body>
</twig:Tabler:Card>

Documentation

Every component has a live preview, its Twig source, the HTML it renders, and the reference of its props, sub-components and blocks on tabler-ux-components.silarhi.dev. Start with Composition.

Contributing

See CONTRIBUTING.md.

License

MIT License. See LICENSE for details.

Built with care by SILARHI.
If Tabler UX Components saves you time, consider giving it a star on GitHub.