Some other fun tidbits: I'm trying to make this an API-first service, with the frontend being just a representation of how to use it. Because of that, I wanted to make the frontend as reusable/refactorable as possible, regardless of frontend framework. I relied on webcomponents for everything, and the full app is a SPA built purely in vanilla js.
I'd never recommend anyone take that approach, it was masochistic. Use react or something. It was a great learning experience, but writing everything in vanilla js does slow down dev time overall.