Preface: This article is about my experience building a crypto mobile wallet back in 2021.
Intro
Building a crypto wallet in React Native is a masterclass in edge-case architecture. Unlike standard mobile applications that simply fetch JSON from a REST API, a crypto wallet acts as an isolated cryptographic engine. It must generate entropy, derive keys, sign transactions, encode raw binary payloads, and communicate with decentralized networks.
When you attempt to bring standard Web3 JavaScript libraries into React Native, you quickly discover a fundamental disconnect: most Web3 packages were written assuming either a full Node.js runtime or a web browser environment. React Native's JavaScript engine (Hermes or JavaScriptCore) provides neither.
To make a mobile crypto wallet work, you inevitably have to master three distinct strategies: Polyfilling, Shimming, and Native Modules. Here is how each strategy fits into building a wallet, when to reach for them, and how the ecosystem has evolved.






