

Supler: Web forms development made easier - adamw1pl
http://www.warski.org/blog/2014/12/supler-0-1-0-complex-forms-made-easier/

======
tel
"Functional Reactive" form library?

[https://github.com/softwaremill/supler](https://github.com/softwaremill/supler)

This buzzword has gotten entirely out of control. Outside of marketing,
though, I _really_ like the idea of having a nice DSL for form building.
Supler can take a lot of advantage of that.

~~~
adamw1pl
That's on purpose, of course ;). But it's not only marketing: functional as in
preferring immutable data structures, and reactive as in changing the form in
response to user input.

Let us know what you think about the DSL itself.

~~~
tel
I think the DSL itself is great. I have a project where I'd like to use
something like this in anger and I'll revisit when I get to engage on that
peoject.

------
jordanlev
This looks like a well thought-out project, but I am unsure how it would
realistically fit into an actual project. It claims that "it does not tie you
to a web framework", which I guess is technically true... but the amount of
setup involved on the server basically makes this thing its own framework (in
terms of having to manage it on the back-end). And if you're already using a
framework then it most likely includes its own form generation/processing
system.

Seems to me that a more practical "framework-agnostic" form library would be
one that is completely on the front-end, and assumes a REST-like API exists on
the backend that it can communicate with.

~~~
adamw1pl
We would be fine using existing frameworks and their form handling systems,
but all of them feel very heavyweight. Either the backing objects need to be
of some specific form, or the communication protocol between the server and
the client is weird, or the generated markup is a mess.

With Supler, we want to make it easy to customise the form, the form's markup
and associated Javascript (to add any dynamic behaviour), so that you don't
have to hack the framework, but instead so that you can use our library to
generate the base and then customise further.

One of the main points of Supler is that it takes care of both the frontend
and the backend, so I don't think it would be possible to keep it entirely on
the frontend. E.g. you define the form once, and you have partial validation
on the frontend, and the same full validation on the backend (without having
to repeat yourself).

------
nwienert
Reminds me of react-forms[1] a little. Both use immutable data in some way,
both have an idea of schema based generation and validation.

I've been wanting to try it in a project but just need the right one. Wonder
what server side separation in scala brings that node couldn't.

[1] [https://github.com/prometheusresearch/react-
forms](https://github.com/prometheusresearch/react-forms)

~~~
adamw1pl
Thanks for the pointer, React-forms as well as React this looks very
interesting, however I think the focus there is mostly on frontend, while we
are trying to approach the problem both on the frotend and backend sides.

Otherwise there are some similarities between the projects.

------
ljoshua
Misread the title and thought it was about ASP.NET's WebForms, to which I
thought, "Wow, something to make it easier? I'll take anything!" ;] (Current
client is a major WebForms project, but luckily v4.5.)

Couldn't be much further from that...

~~~
adamw1pl
Maybe we should target a .NET DSL next then ;)

