React Native Expo wallet for Stellar Testnet. The app aims to feel polished and usable for core wallet flows while still evolving as the PocketPay ecosystem matures.
- This project is best described as a polished but still-evolving wallet experience rather than a production-ready product.
- Core flows such as wallet creation and import, balance checks, sending and receiving, contacts, and the vault UI are implemented and actively refined.
- The app is intentionally focused on Stellar Testnet for development and experimentation. Testnet XLM has no real monetary value.
- The vault experience is currently mock-backed by default. A real Soroban contract integration can be enabled with configuration, but the default experience remains a safe placeholder.
- Storage Guide - SecureStore vs AsyncStorage
- Contacts Guide - Contact storage, backup limitations, and future export/import ideas
- Polyfills Guide - React Native polyfills and import order for Stellar SDK
- Vault UI Guidance - How to present the Soroban Savings Vault, Testnet risks, and contract limitations
- Vault Integration Risks - Assumptions, risks, and integration points between the mobile UI, PocketPay SDK, and Soroban contract
- Mobile Wallet Security FAQ - Local storage, secret handling, reset behaviors, and security guarantees
- Accessibility Checklist - Mobile accessibility audit checklist for labels, touch targets, contrast, focus, screen-reader, and error/loading states
⚠️ This app runs on the Stellar Testnet only. Testnet XLM has no real monetary value. Read the Security Guide before storing or sharing any keys.
- Wallet creation and import
- XLM balance and transactions
- Send and receive with QR codes
- Address book contacts
- Soroban vault placeholder
For the expected screen sequence, validation, and UI states behind these features, see Main wallet user flows.
PocketPay Mobile is part of a broader PocketPay stack:
- Screen Inventory - A map of the main screens and routes in the app.
- Mobile Onboarding Checklist - Quick-reference setup checklist for new contributors
- UI State Catalogue - Loading, empty, error, success, and disabled states for wallet, send, receive, transactions, contacts, and vault
📸 Screenshots below are placeholders. To update them, capture each screen from a simulator or device (use dummy/funded Testnet data only — never real keys or mainnet funds) and replace the files in
docs/screenshots/.
| Wallet | Send | Receive |
|---|---|---|
![]() |
![]() |
![]() |
| Balance overview and quick actions | Send XLM to any Stellar address | QR code for your public key |
| Activity | Contacts | Vault |
|---|---|---|
![]() |
![]() |
![]() |
| Transaction history with sent/received indicators | Saved addresses for quick access | Soroban Savings Vault (mock) |
- Run the app in a simulator with a funded Testnet account.
- Navigate to the relevant screen.
- Take a screenshot and export it at roughly 390 × 844 px (iPhone 14 logical resolution) or equivalent Android size.
- Save it to
docs/screenshots/<screen-name>.pngusing the filenames shown above. - Commit only the image files — never include screenshots that reveal a real secret key or personal data.
React Native, Expo Router, Zustand, PocketPay SDK, SecureStore, AsyncStorage
npm install --legacy-peer-deps
cp .env.example .env
npm start
The PocketPay SDK is pinned to an official source commit and built by the
app's `postinstall` script because the SDK is not currently published to npm.
## Contributing
Before adding new screens or components, read the [Design System guide](docs/design-system.md). It covers colour tokens, typography, spacing, card patterns, buttons, inputs, and dark mode rules derived directly from the existing codebase.
Please read our [Contributing Guidelines](CONTRIBUTING.md) and review our [Accessibility Checklist](docs/accessibility.md) before making UI changes.
## Changelog
See [CHANGELOG.md](./CHANGELOG.md) for a full list of notable changes across releases.
## Security
See the full [Security Guide](docs/security.md) for details on secret key handling, device storage, backups, and safe development practices.
## License
MIT




