Hey @miohtama! This has been a long-standing issue for us. As you say, there is no reason for the
upgrades js library would not work in the browser, except for some dependencies that we need to review. Unfortunately, this involves a very large effort, and we have not been able to prioritize it over other tasks so far.
In the meantime, we suggest you pick the proxy contracts from the upgrades library (we may migrate them to Contracts soonish, by the way) and spin them up manually using your favourite library (web3.js or ethers.js).