Symfony UX 2.32.0 introduces the new Toolkit Package, a set of fully customizable UI components, with Shadcn UI as the first available kit. The initial components include Button, Dialog, Field, Card, Pagination, Table, and InputGroup.
Additional updates across Symfony UX include:
- Autocomplete & Turbo: bug fixes, improved rendering, and better handling of TomSelect and Mercure transports.
- Twig Components: new options to disable component dumps and improved support for anonymous components.
- Live Components: clearer documentation around re-rendering behavior and improved dependency stability.
- Translator: API refactor to use string-based keys, new configuration options for filtering and TypeScript generation, simplified internals, and improved performance for non-ICU translations.
- Map & Icons: minor API and configuration fixes.
This release also expands automated testing, improves CI and code-style tooling, and adds compatibility testing for upcoming Symfony versions.
Changelog Since SymfonyUX 2.31.0
Autocomplete
- Untranslated
no_resultslabel whenoptions_as_htmlis set by @maxperei in PR #3148 - Add documentation about plugins management by @raphael-geffroy in PR #3087
- Fix missing space in JSON snippet by @kasperh90 in PR #3207
- Fix issue where TomSelect could already been initialized on an element by @daFish in PR #3155
- Fix code-block rendering in Autocomplete by @JoppeDC in PR #3259
Turbo
- Fix Mercure custom transport with
turbo_steam_listenby @Fan2Shrek in PR #3147
Twig Components
- Add option to disable the dump of components by @alinceDev in PR #3066
- Fix typo in documentation by @alvidias in PR #3168
- Allow using directory name as component name for anonymous components by @andyexeter in PR #3169
Live Components
- Add clarification of component re-rendering vs. loading content by @Wertisdk in PR #3164
- Pin
phpdocumentor/reflection-docblockto non dev version by @Kocal in PR #3250 - Update index.rst with MarkdownTextarea template info by @Kocal in PR #3267
Map
- Add
Map::removeAll*()method on Elements by @StevenRenaux in PR #3245
Icons
- Fix
aliasesanddefault_attributesconfig types forconfig/reference.phpby @Kocal in PR #3200
Toolkit
- Add support for documenting props/blocks API by @Kocal in PR #3154
- Add Item component by @bernard-ng in PR #3144
- Update Button CSS class, remove as props by @ker0x in PR #3158
- Add CONTRIBUTING.md by @Kocal in PR #3161
- Add missing as props, update CONTRIBUTING.md by @ker0x in PR #3166
- Add
Dialogcomponent by @seb-jean in PR #3173 - Pin
tales-from-a-dev/twig-tailwind-extrato^1.0.0by @Kocal in PR #3190 - Remove hover style to clearly distinguish from Button by @tassilogroeper in PR #3197
- Add new component kdb from shadcn ui by @tassilogroeper in PR #3198
- add Empty component by @bernard-ng in PR #3213
- add Field component by @bernard-ng in PR #3214
- add ButtonGroup component by @bernard-ng in PR #3215
- Add InputGroup component by @daFish in PR #3236
- Fix forgotten documentation links, follows #3097 by @Kocal in PR #3254
- Update CSS file by @Kocal in PR #3258
Translator
- Refactor API to use string-based translation keys instead of generated constants by @Kocal in PR #3208
- Early exit parameters extraction from Intl messages, if no
{is found by @Kocal in PR #3219 - Add option
ux_translator.dump_typescriptto enable/disable TypeScript types generation by @Kocal in PR #3218 - Reword
dump_typescriptoption description by @Kocal in PR #3221 - Refactor
TranslationsDumperoptions from__constructorand setters, todumpmethod by @Kocal in PR #3244 - Add
keys_patternsconfiguration option to filter dumped translations by key patterns by @Kocal in PR #3248
Site
- Fix upson logo & url by @smnandre in PR #3220
- Hide Toolkit menu by @Kocal in PR #3224
- Minor fixes before deployement by @Kocal in PR #3229
- Un-hide Toolkit, partially reverts #3224 by @Kocal in PR #3255
- Rework Toolkit recipe rendering system, improve our Markdown converter by @Kocal in PR #3256
- Fix TerminalCommand layout by @smnandre in PR #3268
Miscellaneous
- Tests over Symfony 7.4.0-RC1 and 8.0.0-RC1 by @Kocal in PR #3159
- Fix CI when testing Symfony RCs versions by @Kocal in PR #3178
- Add support for MercureBundle ^0.4.1 and Mercure ^0.7.0 by @Kocal in PR #3185
- Tests on Symfony 8 stable by @Kocal in PR #3192
- Git-ignore config/reference.php by @Kocal in PR #3205
- Add E2E tests for Autocomplete by @Kocal in PR #3230
- Add E2E tests for LiveComponent by @Kocal in PR #3235
- Add E2E tests for Chart.js by @Kocal in PR #3237
- Add E2E tests for Turbo by @Kocal in PR #3239
- Add E2E tests for CropperJS by @Kocal in PR #3240
- Add quality tools: PHP-CS-Fixer and Twig-CS-Fixer by @Kocal in PR #3249
- Fix pnpm build command by @Kocal in PR #3252
- Truly leverage PHP-CS-Fixer and Twig-CS-Fixer to Fabbot by @Kocal in PR #3251
- Ensure "apps/" exists before adding it in Finder by @Kocal in PR #3257
- PHP CS Fixer: update usage by @keradus in PR #3263
- Run Twig-CS-Fixer on all repo's files, follow #3263 by @Kocal in PR #3264
Great job, really like it. Just to note - having bad UX with homepage of Symfony UX - it is not responsible thus not readable on iPhone. Main content overflows out of view and is not accessible by vertical scrolling or zooming out.
https://ux.symfony.com/toolkit/kits/shadcn
Great! Love it!