Forms on the web have become terrible. Lost state. No keyboard nav. Weird refreshes. Mobile hostile.

The reason is #frontend developers that think clientside state management is how to implement a form. It is not.

Good forms work without client #javascript (and then are progressive enhanced by js to work even better).

Good forms always submit. Good forms remember values and display problems inline.

How do we fix the misconceptions and, in the process, fix the forms on the web ?

@brianleroux I once found myself implementing a GraphQL mutation and several React components to submit what was in essence a simple form.

I remember wishing, sarcastically, for a protocol that literally had this built in.