precision-soft/symfony-json-form
A Symfony package for working with JSON-driven forms, helping you define, validate, and process form data from JSON schemas within Symfony applications. It integrates with Symfony’s Form component and offers a lightweight way to handle JSON form configurations.
.example/ product editor covering every shipped element type, context-hook value objects, and React rendering against both formV1 and formV2. This gives product and engineering a concrete reference for evaluating whether to build form/DTO infrastructure in-house or adopt the package.formV1/formV2 rendering and derived initial values demonstrate a path for versioned form schemas, supporting phased rollouts and backwards-compatible form migrations.150 for a float price field. This directly affects product editors, pricing forms, and any PHP/React flow where browser JSON is denormalized into typed DTOs.hasJsonBody() and constructDto() methods let teams tailor request handling and rendering decisions, which supports product-specific form services and custom DTO construction.render() and handleRequest(), plus package-level exceptions for DTOs that cannot be constructed without arguments, improves reliability for teams populating DTOs in place or building DTOs dynamically.import type, and tsconfig.json enables verbatimModuleSyntax, reducing friction for host applications with stricter TypeScript or bundling configurations..example/ and --example validation path as an adoption gate. If the example’s product-editor patterns do not map to your domain, the package is likely a poor fit.For executives: This package reduces duplicated form and DTO logic between Laravel and React, accelerating delivery of product editors and admin workflows. v1.3.0 adds a runnable reference product editor and fixes a real JavaScript-to-PHP numeric handling issue that could block price and quantity forms. It also restores DTO subclass support and improves error reporting, lowering integration and support risk. It is best positioned as a build accelerator for Laravel/React teams, not as a replacement for a hosted form builder.
For engineering: The release tightens the PHP/React contract: JSON request bodies are now denormalized with the correct format, float properties accept JavaScript’s whole-number representation, DTO subclasses are accepted via instanceof guards, and unbuildable DTOs surface as package exceptions with form and DTO context. New overridable methods provide controlled extension points, while the React type-import changes improve compatibility with strict TypeScript and host bundlers. The expanded example and test-suite updates make the package easier to validate before adoption.
For product: The package supports versioned, server-defined forms and complex product nomenclators without duplicating field definitions across backend and frontend. The new example demonstrates every shipped element type and both schema versions, making it easier to assess fit, estimate effort, and de-risk a pilot.
How can I help you explore Laravel packages today?