Jermey Keith visited a school doing this exact project, and I thought it was a great idea for learning:
There’s a specific module his students are partaking in that’s right up my alley. They’re given a PDF inheritance-tax form and told to convert it for the web.
You could make doing this job really well a whole full-stack experience, but it starts with a great front end.
I genuinely get excited by the potential for progressive enhancement here. Sure, there’s the obvious approach of building in layers; HTML first, then CSS, then a sprinkling of JavaScript. But there’s also so much potential for enhancement within each layer.
Got your form fields marked up with the right
input
types? Great! Now what aboutautocomplete
,inputmode
, orpattern
attributes?Got your styles all looking good on the screen? Great! Now what about print styles?
Got form validation working? Great! Now how might you use local storage to save data locally?
I also love how with web forms, you don’t have to look at fields that are only required in certain circumstances. That’s implemented with progressive disclosure.