Hello there!
As Ethers and Viem are both growing to be the de facto web3 libraries (instead of the older web3 and clabs’ contractkit), we wrote up a little migration guide document to help refactor your app if necessary.
You can find both contractkit->ethers and contractkit->viem guides in this PR: chore: add migration notes from contractkit by nicolasbrugneaux · Pull Request #10228 · celo-org/celo-monorepo · GitHub
And they’ll be merged on the master branch soon enough.