{"slug": "golemui", "name": "GolemUI", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "", "recommenders": 3, "commenters": 4, "warners": 1, "score": 1.853, "rising": -0.98, "first": "2026-07-01", "latest": "2026-07-03", "why": "", "why_is_quote": false, "has_verdict": false, "sentiment": {"recommend": 3, "neutral": 0, "compare": 0, "warn": 1}, "spark": [0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "", "kind": "", "icon": true, "domain": null, "github_repo": "github.com/golemui/golemui", "official_url": "https://github.com/golemui/golemui", "pricing": "", "aliases": ["GolemUI"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 780388064, "item_id": 48774254, "url": "https://news.ycombinator.com/item?id=48774254", "by": "mattstir", "date": "2026-07-03", "version": null, "stance": "recommend", "quote": "I'm impressed with the speed of progress!", "excerpt": "Just wanted to say I'm impressed with the speed of progress! There's clearly a lot of passion being poured into the project, and I appreciate that folks are responding really quickly to things. It looks like you've already fixed most/all of the things I noticed, and added Firefox to the test suite[0]. Nice! [0] https://github.com/golemui/golemui/pull/215", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780128544, "item_id": 48758034, "url": "https://news.ycombinator.com/item?id=48758034", "by": "bel8", "date": "2026-07-02", "version": null, "stance": "recommend", "quote": "That's impressive!", "excerpt": "That's impressive! A quick glance shows me there's a commit that added almost 2500 lines of code. https://github.com/golemui/golemui/commit/861b182556fab44d1c46326b6a73f1c898843322 But that doesn't mean vibe-coded. Just hints at LLM assistance which, imo, is fine.", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780010688, "item_id": 48750668, "url": "https://news.ycombinator.com/item?id=48750668", "by": "nilirl", "date": "2026-07-01", "version": null, "stance": "recommend", "quote": "Ok, I love it.", "excerpt": "Ok, I love it. Can you simplify how form dynamism works? I skimmed the docs and saw 'states', but it didn't immediately click how it works. Do we build a tree of rules outside of the components? Are states attached to each component, bottoms-up, and then the form tree is managed by the library?", "context": "", "use_case": "JavaScript forms", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}]}], "caveats": [{"label": "", "summary": "", "quotes": [{"id": 780215472, "item_id": 48763467, "url": "https://news.ycombinator.com/item?id=48763467", "by": "rich_harris", "date": "2026-07-02", "version": null, "stance": "warn", "quote": "I also notice that one of the first forms on your website doesn't adhere to common accessibility guidelines", "excerpt": "I have to admit I get very disappointed when I see new form abstractions that don't take this seriously \u2014 especially if they make bold claims like 'the new paradigm'!. The whole point of forms is that they're part of HTML. You should not need JavaScript to submit a form, period. I think about the woman in this story \u2014 https://shkspr.mobi/blog/2021/01/the-unreasonable-effectiveness-of-simple-html/ \u2014 as an industry, we", "context": "", "use_case": "JavaScript form building", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}]}], "who": [], "tags": [], "use_cases": ["javascript form building", "javascript forms"], "compared": [], "makers": [{"id": 780415920, "item_id": 48775995, "url": "https://news.ycombinator.com/item?id=48775995", "by": "elecash", "date": "2026-07-03", "version": null, "stance": "neutral", "quote": "We take very seriously the feedback from the community", "excerpt": "Hey mattstir, I did the fix and very happy to help, but thanks to you for reporting it! If you see any other issues, please, open it in Github and we'll try to fix it asap: https://github.com/golemui/golemui/issues We take very seriously the feedback from the community, so don't hesitate also to open a discussion if you have proposals or any other comments: https://github.com/golemui/golemui/discussions", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780121200, "item_id": 48757575, "url": "https://news.ycombinator.com/item?id=48757575", "by": "wtfdeveloper", "date": "2026-07-02", "version": null, "stance": "recommend", "quote": "So the answer to how much has the library code vibe code is none of it", "excerpt": "Let me paraphrase a previous reply: ___ You can see our first commit here https://github.com/golemui/golemui/commits/main/?since=2025-... 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 this has been well thought ___ So the answer to how much has the library code vibe code is none of it... That said, this is not an excuse for those bugs! We are alre", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780060224, "item_id": 48753764, "url": "https://news.ycombinator.com/item?id=48753764", "by": "wtfdeveloper", "date": "2026-07-01", "version": null, "stance": "recommend", "quote": "you can bet we have pour our souls on the library code", "excerpt": "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. https://github.", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780022704, "item_id": 48751419, "url": "https://news.ycombinator.com/item?id=48751419", "by": "wtfdeveloper", "date": "2026-07-01", "version": null, "stance": "recommend", "quote": "we believe the key here is how we approach it", "excerpt": "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: https://golemui.com/dx/form-definition/overview/ Have a look specially at the tags and selectors", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780013952, "item_id": 48750872, "url": "https://news.ycombinator.com/item?id=48750872", "by": "wtfdeveloper", "date": "2026-07-01", "version": null, "stance": "recommend", "quote": "So you can see this has been well thought", "excerpt": "I guess you are implying how mature we are? If so, I think you can see this on our github commit log: https://github.com/golemui/golemui/commits/main/?since=2025-09-01&until=2025-09-30&after=9808add2f4b2e054712c93718bdbe9e052eba102+34 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 this has been well thought", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780012960, "item_id": 48750810, "url": "https://news.ycombinator.com/item?id=48750810", "by": "wtfdeveloper", "date": "2026-07-01", "version": null, "stance": "neutral", "quote": "you can still cover a lot of ground using inlined expressions", "excerpt": "Depending on the DSL you choose (JSON or Programmatic) you declare reactivity slightly different, but pretty much, we have states and inlined expressions. If states didn't click initially that's fine, you can still cover a lot of ground using inlined expressions: https://golemui.com/dx/features/states/inline-when/ Basically you can nest the states, so you can build a tree of states that way. Or you can leverage the D", "context": "", "use_case": "Reactive JavaScript forms", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}], "threads": [{"url": "https://news.ycombinator.com/item?id=48748182", "title": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms", "mentions": 12}], "sentiment_by_month": {"2025-11": {}, "2025-12": {}, "2026-01": {}, "2026-02": {}, "2026-03": {}, "2026-04": {}, "2026-05": {}, "2026-06": {}, "2026-07": {"recommend": 3, "warn": 1}, "2026-08": {}, "2026-09": {}, "2026-10": {}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 780388064, "item_id": 48774254, "url": "https://news.ycombinator.com/item?id=48774254", "by": "mattstir", "date": "2026-07-03", "version": null, "stance": "recommend", "quote": "I'm impressed with the speed of progress!", "excerpt": "Just wanted to say I'm impressed with the speed of progress! There's clearly a lot of passion being poured into the project, and I appreciate that folks are responding really quickly to things. It looks like you've already fixed most/all of the things I noticed, and added Firefox to the test suite[0]. Nice! [0] https://github.com/golemui/golemui/pull/215", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780215472, "item_id": 48763467, "url": "https://news.ycombinator.com/item?id=48763467", "by": "rich_harris", "date": "2026-07-02", "version": null, "stance": "warn", "quote": "I also notice that one of the first forms on your website doesn't adhere to common accessibility guidelines", "excerpt": "I have to admit I get very disappointed when I see new form abstractions that don't take this seriously \u2014 especially if they make bold claims like 'the new paradigm'!. The whole point of forms is that they're part of HTML. You should not need JavaScript to submit a form, period. I think about the woman in this story \u2014 https://shkspr.mobi/blog/2021/01/the-unreasonable-effectiveness-of-simple-html/ \u2014 as an industry, we", "context": "", "use_case": "JavaScript form building", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780128544, "item_id": 48758034, "url": "https://news.ycombinator.com/item?id=48758034", "by": "bel8", "date": "2026-07-02", "version": null, "stance": "recommend", "quote": "That's impressive!", "excerpt": "That's impressive! A quick glance shows me there's a commit that added almost 2500 lines of code. https://github.com/golemui/golemui/commit/861b182556fab44d1c46326b6a73f1c898843322 But that doesn't mean vibe-coded. Just hints at LLM assistance which, imo, is fine.", "context": "", "use_case": "", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}, {"id": 780010688, "item_id": 48750668, "url": "https://news.ycombinator.com/item?id=48750668", "by": "nilirl", "date": "2026-07-01", "version": null, "stance": "recommend", "quote": "Ok, I love it.", "excerpt": "Ok, I love it. Can you simplify how form dynamism works? I skimmed the docs and saw 'states', but it didn't immediately click how it works. Do we build a tree of rules outside of the components? Are states attached to each component, bottoms-up, and then the form tree is managed by the library?", "context": "", "use_case": "JavaScript forms", "switched_from": "", "story": "Show HN: GolemUI \u2013 The new paradigm for JavaScript forms"}]}