Forms are one of the most heavily used forms of interactivity on the web and are an integral part of any web application. When built well, they incentivize users to complete forms quickly without sacrificing inaccuracies. Creating a “good form” that is semantic while also providing the user with a pleasant experience however is a tricky business. It requires a keen understanding of the user experience to build out a good engaging workflow and a willingness to finagle input elements to your bidding. Thankfully, the template syntax in VueJS alongside its state management system lends itself well to creating semantic web forms that also respond seamlessly to user input. In this talk, we will explore various patterns and strategies to building semantic and robust forms in VueJS while also ensuring a delightful and engaging user experience.