I’ve spent a lot of time this week producing the calculator (estimation) page. This page is way more complex than I originally thought it would be, and has required lots of thinking. Not only is it a responsive nightmare, the underlying javascript that makes it work is way above anything I’ve ever tackled before. I’ve had to do a lot of planning and building of tiny components. All these tiny components will hopefully unite into one big working function in the end. One of the most complex issues I have had is dynamically inserting and removing “people” and “vegetables” as the user needs them. The way I finally decided on building this was to use a library called Masonry.js. This library allows dynamic insertion and removal of predefined blocks of code. I had to build a function that allows a user to click specific buttons to remove items, since the default is making the whole item clickable. After I get further along in this process I’ll do a more involved description of my process.
The most recent version is available here.