Another selfish reason: web pages just work a lot better when you use the actual HTML elements, especially when you compose them together. React projects often mix several component libraries together to make a comprehensive UI. All of these libraries behave differently in subtle ways. When you compose them together, the differences compound: focus is not restored to the button that opened a dialog when it is dismissed, there are 4 different blues used on the page, the date input doesn't use your country's date format.When you use HTML primitives like inputs with associated labels, the new popover API, dialogs, details + summary elements, their behaviors are all made by the browser vendor and are designed to compose with each other. It really is a difference of night and day, and for free. We don't take advantage of the amazingly powerful tools we have been given.
Flimm|8 months ago
dgb23|8 months ago
https://extensiblewebmanifesto.org/
Good intentions and some good ideas. But ultimately lead to a fractured, overly complicated and bloated web.
I say yes to lower level, more general capabilities. But why does that have to mean we get bad APIs (web components, indexeddb, service workers...) and lack fundamental and well established UI components (combobox, toggles, tabs, tooltips, data grids...) and incomplete implementations (lacking HTTP verbs for forms)?
(Also why we're at it, I'm going to sneak in a complaint about half baked and broken language features like `const` and `import`. Also we shouldn't have abandoned Do-Not-Track...)
flomo|8 months ago
ozim|8 months ago
Those controls work fine maybe for a static form on a website as parent wrote - but web applications are not websites...
naavis|8 months ago
Toritori12|8 months ago
bob1029|8 months ago
I find a lot of the arguments for building inaccessible UIs seem to conflate historical web issues with modern times. Virtually everything that sucked in the core web toolkit circa 2010 has essentially been solved in 2025, even on ultra-restrictive platforms like iOS Safari.
cardanome|8 months ago
Not the prettiest but I have seen much worse custom ones that were super buggy.
dgb23|8 months ago
pelagicAustral|8 months ago
PaulHoule|8 months ago
airtonix|8 months ago
[deleted]