Keep Formly-style, schema-driven form authoring — and gain a tested export contract + CI validation you'd otherwise hand-write.
ngx-formly renders forms from a schema — brilliantly. But when the form is filled in, mapping those values to the client/back-end shape your system needs is left to you: you hand-write serializers per form, and nothing validates that mapping.
Aventis Form Generator covers the whole round-trip — author →
render → export to a client-shaped payload — with a small template DSL
($label / $date / $pick / $rows)
and CI schema validation of both the form and its export contract.
If your pain is rendering dynamic forms, Formly is excellent and free. If your pain is the round-trip — consistent, tested value→payload mapping across many forms — that gap is what we fill.
// hand-written & maintained per form
const payload = {
fullName: model.name,
dob: new Date(model.dob)
.toISOString().slice(0,10),
country: opts.find(o =>
o.value === model.country)?.label,
people: model.people.map(p =>
({ first: p.firstName })),
};
{
"fullName": "name",
"dob": { "$date": "dob",
"format": "YYYY-MM-DD" },
"country": { "$label": "country" },
"people": { "$rows": "people",
"map": { "first":
"firstName" } }
}
Change the client shape without touching component code — and a CI check validates the contract, so a rename can't silently break a downstream integration.
| ngx-formly | Aventis Form Generator | |
|---|---|---|
| License / cost | MIT, free | Source-available, commercial |
| Maturity / ecosystem | Very mature, the default | Newer, focused |
| Schema-driven rendering | ✅ Excellent, extensible | ✅ Material-native |
| Conditional fields / validators / arrays | ✅ | ✅ |
| Value → client-shape export | ⚠️ DIY per form | ✅ Template-first, built in |
| CI validation of form + export contract | ⚠️ DIY | ✅ Built in |
| Grid with add/edit via generated forms | ➖ | ✅ /grid entry |
| Drag-and-drop builder / hosting | ➖ code-first | ➖ code-first |
| Bundle | small | small core (ag-grid opt-in — form-only ships ~400 KB less) |
Where Formly wins: free, MIT, battle-tested, big ecosystem, the safe default — we don't pretend otherwise. Where we win: the tested export contract + CI validation, and an opinionated Material + grid story.
Both are schema-driven and code-first, so the authoring mental model transfers. Keep your Formly-style thinking; add a template + hints for the export you were hand-writing.