SafeAuth uses ether v6 as a dependency and Push Protocol uses ether v5 as a dependency. Normal BrowserProvider method is not available in ether v6, so we had to use JsonRpcProvider and get signer from SafeAuth.
Faced high gas prices (not normal), in certain L2s.
Some APIs were throwing CORS, we had to build a proxy server to make the API calls. Also the RateLimit was very high. So we had to make our API calls carefully.