| Thanks for the checking! To avoid misunderstanding, I want to clarify that negative feedback and positive feedback are both important to open source projects. I like guys like you who has a forthright attitude. Then, let me explain my decisions when I built Luda. 1. The `<label>` tag and the `for` attribute are essential in forms, and WAI support is important if we want to make an application with good accessibility. The reason why I don't include these things in the documentation is that I want to make the sample code snippets as short as possible. So developers will focus on how to use the framework without having to figure out too many topics. Luda doesn't limit developers to use WAI attributes nor write a good form.
(I know Bootstrap includes these topics in their documentation, but that's not my choice, please correct me if I'm wrong.) 2. About the `required` attribute and native HTML validation: Native validation popovers can not be easily customized in all browsers. Maybe some developers still want to validate forms in JS instead of the native HTML validation. It's a choice to developers how to validate forms, Luda does't limit the ways. 3. The form-dropdown component is an alternative to the native `<select>`, it supports customization more flexable. It's OK if someone wants to stick to the native `<select>` tag. It's just another choice to developers, use the native `<select>` tag to follow the best practice or use a simulated one with a better style customization support. 4. I admit I made bad examples for the placeholder attribute and grouped checkboxes/radios, I'll correct those code snippets. Thanks again! |
2. & 3. There seems to be a general misunderstanding with a lot of frameworks about what needs to be customized. Native browser elements are always to be preferred - they are known by the users, accessible, and just work. Custom elements often are a lot more about design than usability and not wanting to "break" the designer's creation. A server-sided validation is of course necessary in both cases nevertheless. Custom client-sided validation can be useful in complex forms though.
3. You’re right, there are examples of both custom and native select elements.
4. Cool, thanks!
[1] e.g. https://oatw.github.io/luda/0.1.x/elements/form#select-field