Dealing with errors from Ethers.js is a pain. This is mostly due to the differences and constant changes of the return values from different Ethereum clients like Parity, Geth, etc.
ethers-errors
is a WIP attempt at trying to parse errors thrown by Ethers.js