Many such libraries out there I could’ve used. I chose to take the hard path because:
1. Light weight, no external dependencies. I hate code bloat
2. I now know infinitely more about the PSBT format than I did before
Zero-JS Hypermedia Browser