Doesn't sound terribly overengineered to me, it's just that my web editing workflow is minimalistic almost to a fault.

I have an engineered piece you can add to your solution: Trigger the builds automatically with entr[0]. That allows you to even skip the make step in vim. Just save and things happen.

Actually what I often do is I just `watch make` in the directory where I'm editing, or `while sleep 5; do make; done`.