Aurelia Advanced Topics


#21

Webpack 4 bundling and PWA.


#22

Problem with form builders is that they will always be pretty specific to the task at hand.

A generic form builder isn’t a plugin, that’s a full-fledged product on its own. Larger businesses use products like SAP for that kind of thing.

I have seen some “plugins” from the Angular corner that try to do this. They’re not particularly popular and for good reasons. You still need to build a UI (with backend) to help generate the JSON that generates these forms, or the whole proposition rather beats its purpose.

That said, for those of us who want to try such an undertaking, it would be interesting to see some clean examples of using Binding Behaviors on how to do it. This is a very attractive problem domain for many businesses and entrepreneurs.


#23

I’ve built a couple dynamic-ish form generators, and I can’t see a scenario where having a generic tool would have saved time. The forms needed have always been specific to the business at hand, and needed business rules, field types, and validation that were custom to that app.

The last one that I built was driven by the database. There are tables for forms, fields, formfields (m2m link), and lookups (for when a field calls for a dropdown, radio button, or checkbox list). There is no user facing designer, but it takes only a few minutes to add the appropriate rows to the database.

I’d feel comfortable using this technique in another product, but I haven’t thought about how to make it work in a designer. The current version is in Knockout, so porting it would also be a project in itself.


#24

Well as far as I remember @matt.duffield built a designer for forms as a product. It’s even based on Aurelia. Just can’t remember the name of it anymore …


#25

Front End Creator. Am hoping to leverage a small portion of his knowledge without affecting his product :grin:


#26

In FrontEnd Creator, we use an Entity Builder to create your schema. This typically would represent your backend database table. During the creation of an Entity, you define form specific fields or even custom elements. Finally, in the designer part of the app, you simply drag-n-drop the entity by selecting whether it is view-only or editable. The nice part with this is that you can change an entity definition easily and drag-n-drop fairly quickly.

I agree that there is still some work to do in order to satisfy customer business rules, but this certainly does save a lot of time getting this scaffolded and started!

I am happy to do a chapter on something similar to FrontEnd Creator or any other scenario that comes to mind. FrontEnd Creator uses a custom JSON format but the chapter could use JSONSchema or something else for that matter.


#27

this certainly is an advanced topic and would make a great fit