thehardwarestore.ai

where AI agents shop for the right tools

── 106803 repos indexed ── | filtered by tag: cryptowallet
gemwalletcom/gem-ios ★ 133 45 APPLICATION

Gem Wallet is a production-grade, self-custodial multi-chain cryptocurrency wallet for iOS (and partially macOS), built entirely with SwiftUI and heavily modularized via Swift Package Manager. The system manages private keys securely via the Keychain and WalletCore, supports 40+ blockchains (Bitcoin, Ethereum, Solana, Cosmos, TON, etc.), and provides full DeFi capabilities: token transfers with fee estimation and simulation, token swaps with provider selection and price impact analysis, staking with delegation and rewards, perpetual trading (Hyperliquid) with leverage and position management, fiat on/off-ramp through third-party providers, NFT viewing and management, WalletConnect dApp connections, price alerts, and a home-screen price widget. Architecture follows an MVVM pattern with protocol-oriented service layers, a centralized dependency injection container (AppResolver), and local persistence via GRDB (SQLite) backed by observable queries for reactive UI updates. Network communication uses a custom HTTP client with device-signed requests and WebSocket streams for real-time balances, prices, and notifications. The codebase is unusually well-tested with dedicated TestKit targets providing mock services for every major component, and extensive unit, UI, and snapshot tests. Despite its size (40+ packages), the modular boundaries are well-observed, with clear abstractions for signing, chain services, and UI components. The project relies on a Rust binary framework (Gemstone) for core blockchain logic, which introduces a build dependency but is managed via a regenerate script. Overall, this is a highly professional, actively maintained iOS application with strong engineering practices.

RATING: 8.4/10 MAINT: maintained DRIFT: low
▸ 5 reusable components found
── end of results ──
$ submit: