thank you for taking the time to write this out. This is exactly the kind of harsh but true reality check we were hoping to get by posting here..
With regards to the accessibility point, you're right, marking the email field invalid as you type is not accessible. GolemUI allows you to specify different validation trigger modes via form config: 'blur', 'change', 'submit' and 'eager'. We should change that to 'blur' in our demo.
Regarding server-side vs. client-side validation, we fully agree. Because our library is strictly a frontend tool, we see them as complementary features that can coexist.
With regards to progressive enhancement and the full-stack approach, well, is a much harder architectural hurdle for how our engine currently works, but you have given us some food for thought. We will think about these features.
Hey! Woah! Actually, this might seem dumb, but we did not think of that!
After the rollercoaster of what this post have been, I can guarantee you that we will indeed consider this very seriously.
Check the website in a few weeks, I would hope that by them we have had enough time to intake all the feedback from this post, specially from this comment.
Yes, that is basically the whole idea, to have all the benefits of a JSON like core BUT to give a dx layer on top that allows forms to be semantically defined.
correct! We are (obviously), using AI to assist us, but for the library code we are fully on top. And you can expect this to be the case for all the foreseeable future of the library
Well, If we have learned something from this post today is that we are terrible designers web designers :)
We take this as actually great feedback, as we are indeed not good at all at web design, so we will try to improve it using all the feedback in this thread.
That being said, you can bet we have pour our souls on the library code for this project.
You can easily see this by looking at our commits.
Note the date! 2025-09-01, that is the date of our first commit, 1962 commits later we published v1.0
So you can see that the actual code for the library has been build very carefully, I think if you give it a go at our (not so great) website, and you actually see the features, that will impress you
Indeed, this is an old principle, we believe the key here is how we approach it, for instance, if you have a look at our DX layer (the gui.*) you will see how we bridge both worlds:
I don't think there is a simple answer to that, if moving from a big project to GolemUI or any other platform, the key would be to do it iteratively, first starting with a POC and then slowly intaking the rest of forms, if you were to consider doing a POC with GolemUi we will more than happy to help with this obviously :)
We are trying to signal that our product is ready to be used, is matured, but is v.1.0 as in this being the initial release... I don't think you would get two companies fully agreeing on their versioning strategy though...
Depending on the DSL you choose (JSON or Programmatic) you declare reactivity slightly different, but pretty much, we have states and inlined expressions.
We will indeed explore this approach, would be great to hear your thoughts too! Would you consider sharing some more insight by dropping a comment here?
https://github.com/golemui/golemui/issues
You are correct, the reactive expressions are not statically checked at the moment, but we have an item in our roadmap to fix that. On the other hand, the runtime expressions evaluator does provide feedback in the form of error messages, so it doesn't fail silently.
Well, we are very experienced developers, which is code for.. we are old... Old as from the time where websites had banners moving across the page, so that might have influenced our choices.
But these suggestions are gold to us as we have no expertise on design, so thanks AGAIN
thank you for taking the time to write this out. This is exactly the kind of harsh but true reality check we were hoping to get by posting here..
With regards to the accessibility point, you're right, marking the email field invalid as you type is not accessible. GolemUI allows you to specify different validation trigger modes via form config: 'blur', 'change', 'submit' and 'eager'. We should change that to 'blur' in our demo.
Regarding server-side vs. client-side validation, we fully agree. Because our library is strictly a frontend tool, we see them as complementary features that can coexist.
With regards to progressive enhancement and the full-stack approach, well, is a much harder architectural hurdle for how our engine currently works, but you have given us some food for thought. We will think about these features.
Seriously, thank you for the feedback!