micayael/form-generator-bundle
A bundle for generating and managing dynamic forms in PHP applications, with support for configurable fields, reusable form definitions, and streamlined form rendering.
composer require micayael/form-generator-bundle, then add the bundle to config/bundles.php (Symfony 5.3+) or app/AppKernel.php (older). With zero stars and zero dependents, also copy the source into a fork or pin the exact commit in composer.json before you build anything on it.Resources/config/services.yaml (or services.php) first to learn the exposed service ID, the factory class, and the config key namespace. That is your real API.DependencyInjection/Configuration.php and whatever class does Yaml::parse / json_decode). This tells you which schema keys are supported — field name, type, options, label, constraints — and is the file you will extend.FormType (e.g. a contact form or an admin filter bar) into a YAML definition and wire it in a controller. Keep it out of anything user-facing or payment-adjacent until you have tested it against your Symfony version.config/forms/*.yaml and load them through the bundle's factory rather than constructing FormBuilder by hand. Treat each YAML file like a migration: reviewed, versioned, and diffed in PRs.$form = $formFactory->createFromFile('contact.yaml', $data); — wrap this in a thin application-level service (App\FormDefinitionFactory) so the controller never touches the bundle's classes directly. That gives you a single seam to swap or remove the package later.type values (TextType, ChoiceType, EntityType, …) and resolve them through a map in your own code. This stops arbitrary class names in YAML from being instantiated.constraints: key the bundle passes to the field options or, more safely, via a FormTypeExtension / class-level Validator on your DTO. Do not trust the bundle's validation handling until you have a test proving constraints fire._partials/ directory rather than copy-pasting across files.composer.json for the symfony/form constraint; if it caps at 4.x or 5.x, you are adopting an unmaintained dependency. Budget for forking it.dump($definition)) before it hits FormBuilder; most "field missing" bugs are a schema key the parser silently ignored.symfony/config Configuration tree, or a JSON-schema validation step) so typos like optons: fail loudly.composer update you can actually run.bin/console cache:clear after editing YAML; stale definitions are the most common "it didn't pick up my change" report.App\FormDefinitionFactory means replacing this bundle with a hand-written FormType registry is a one-file change if the package stalls — which, given its numbers, is the likely outcome.How can I help you explore Laravel packages today?