Symfony UX
repository·3.x·Indexed 22 days ago
https://github.com/symfony/uxAn initiative and set of libraries that bridge the gap between PHP and JavaScript, allowing developers to use powerful JS tools within Symfony by writing primarily PHP code. It leverages Stimulus for DOM manipulation and integrates with AssetMapper or Webpack Encore. The ecosystem includes packages such as UX Autocomplete, UX Chart.js, UX Cropper.js, UX Dropzone, and the experimental UX Calendar Link.
What's inside Symfony UX
- Symfony UX Map is a component designed to integrate interactive maps into Symfony applications. It provides a unified way to work with different mapping providers, such as Leaflet or Google Maps, within the Symfony ecosystem.
Overview of Symfony UX React
3.xSymfony UX React is a bridge that integrates React into Symfony applications. It provides specialized tools that allow developers to render React components directly from Twig templates, enabling a seamless hybrid approach between Symfony's server-side rendering and React's client-side interactivity.Overview of Symfony UX Chart.js
3.xSymfony UX Chart.js is a Symfony bundle that integrates the Chart.js library into Symfony applications. It is part of the Symfony UX initiative, designed to provide easy-to-use components for modern web interfaces.Overview of Symfony UX
3.xSymfony UX is a collection of libraries designed to seamlessly integrate JavaScript tools into Symfony applications. It allows developers to interact with JavaScript libraries (like Chart.js) using PHP, handling the underlying JavaScript logic automatically.
Key technical characteristics:
- JavaScript Engine: Leverages Stimulus for DOM manipulation and behavior.
- Asset Management: Integrates with AssetMapper or Webpack Encore (via Stimulus Bridge).
Overview of Symfony UX Dropzone
3.xSymfony UX Dropzone is a Symfony bundle that provides lightweight drag-and-drop zones for file inputs within Symfony Forms. It enhances user experience by allowing visitors to drag and drop files directly into a container instead of using the standard file browser dialog.Overview of Symfony UX Native
3.xSymfony UX Native is an experimental component that integrates Hotwire Native into Symfony applications. It is part of the Symfony UX initiative.
Note: This component is currently EXPERIMENTAL and its API or behavior may change drastically.
Overview of Symfony UX Calendar Link
3.xSymfony UX Calendar Link is an experimental component designed to generate "Add to calendar" links. It supports multiple calendar services including:
- Google Calendar
- Outlook.com
- Office 365
- iCalendar (
.ics) format (compatible with Apple Calendar, Outlook desktop, Thunderbird, and other native calendar clients).
Note: This component is currently EXPERIMENTAL and its API or behavior may change drastically.
What is Symfony UX Translator?
3.xSymfony UX Translator is a tool that integrates the standard Symfony Translation component with JavaScript. It allows you to use your existing server-side translations within your client-side JavaScript code, ensuring consistency between your PHP and JS layers.What is Symfony UX Turbo
3.xSymfony UX Turbo is a Symfony bundle that integrates the Hotwire Turbo library into Symfony applications. It enables a Single Page Application (SPA) user experience—characterized by fast, seamless transitions—without requiring the developer to write custom JavaScript.
Key capabilities include:
- SPA-like transitions: Navigate between pages without full browser reloads.
- Real-time updates: Integrates with Symfony Mercure or other transports to broadcast DOM changes to all connected users, allowing for live UI updates.
Overview of Symfony UX Vue.js
3.xSymfony UX Vue.js is a toolset designed to integrate Vue.js (v3) into Symfony applications. Its primary purpose is to provide developers with the ability to render Vue.js components directly from Twig templates, bridging the gap between Symfony's server-side rendering and Vue's reactive component model.Overview of Symfony UX Autocomplete
3.xSymfony UX Autocomplete provides Javascript-powered auto-completion functionality for Symfony forms. It enhances user experience by allowing users to search for and select options from a list as they type in form fields.Overview of StimulusBundle
3.xThe
StimulusBundleprovides a deep integration between Symfony, Stimulus, and the Symfony UX ecosystem. It enables developers to bridge the gap between server-side Twig templates and client-side Stimulus controllers through several mechanisms:- Twig Integration: Provides
stimulus_*functions and filters to easily attach Stimulus controllers, actions, and targets directly within Twig templates. - Asset Management: Integrates seamlessly with Symfony UX and the Symfony AssetMapper component for managing JavaScript assets.
- Data Attribute Helper: Includes a helper service designed to programmatically build Stimulus data attributes, allowing you to pass data from Symfony services to your Stimulus controllers.
- Twig Integration: Provides