Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 

Repository files navigation

Stellar PocketPay

Stellar PocketPay

A mobile-first Stellar Testnet wallet ecosystem

License: MIT PRs Welcome Stellar Testnet Soroban


🌟 Overview

Stellar PocketPay is an open-source, mobile-first wallet ecosystem built on the Stellar Testnet. It is designed to demonstrate real-world blockchain development patterns while remaining approachable for developers of all experience levels.

The project spans three repositories that work together to provide a complete wallet experience β€” from a polished React Native mobile app, to a Soroban smart contract for savings vaults, to a reusable TypeScript SDK that ties everything together.

Note: This project runs on Stellar Testnet and is intended for educational and demonstration purposes. Do not use it with real funds.


πŸ“¦ Repository Structure

The Stellar PocketPay ecosystem is organized as a multi-repo project:

Repository Description Tech Stack
stellar-pocketpay-wallet Mobile wallet app with full Stellar Testnet integration React Native, Expo, TypeScript
stellar-pocketpay-vault Soroban savings vault smart contract Rust, Soroban SDK
stellar-pocketpay-sdk Reusable TypeScript SDK for Stellar & Soroban interactions TypeScript, Stellar SDK
stellar-pocketpay-docs Central documentation (this repo) Markdown
stellar-pocketpay/
β”œβ”€β”€ stellar-pocketpay-wallet/    # React Native mobile app
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ screens/             # UI screens (Home, Send, Receive, Vault, etc.)
β”‚   β”‚   β”œβ”€β”€ services/            # Stellar & Soroban service layers
β”‚   β”‚   β”œβ”€β”€ components/          # Reusable UI components
β”‚   β”‚   β”œβ”€β”€ navigation/          # App navigation (React Navigation)
β”‚   β”‚   β”œβ”€β”€ store/               # State management (Zustand)
β”‚   β”‚   β”œβ”€β”€ theme/               # Design tokens & theming
β”‚   β”‚   └── utils/               # Helpers & constants
β”‚   β”œβ”€β”€ app.json
β”‚   └── package.json
β”‚
β”œβ”€β”€ stellar-pocketpay-vault/     # Soroban smart contract
β”‚   β”œβ”€β”€ contracts/
β”‚   β”‚   └── savings-vault/
β”‚   β”‚       └── src/
β”‚   β”‚           β”œβ”€β”€ lib.rs        # Contract entry point
β”‚   β”‚           β”œβ”€β”€ vault.rs      # Core vault logic
β”‚   β”‚           β”œβ”€β”€ types.rs      # Data types & enums
β”‚   β”‚           β”œβ”€β”€ errors.rs     # Custom error codes
β”‚   β”‚           β”œβ”€β”€ events.rs     # Contract events
β”‚   β”‚           β”œβ”€β”€ storage.rs    # Storage helpers
β”‚   β”‚           └── test.rs       # Unit tests
β”‚   └── Cargo.toml
β”‚
β”œβ”€β”€ stellar-pocketpay-sdk/       # TypeScript SDK
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ wallet/              # Wallet creation & management
β”‚   β”‚   β”œβ”€β”€ transactions/        # XLM payment operations
β”‚   β”‚   β”œβ”€β”€ vault/               # Soroban vault interactions
β”‚   β”‚   β”œβ”€β”€ types/               # TypeScript type definitions
β”‚   β”‚   β”œβ”€β”€ utils/               # Utility functions
β”‚   β”‚   └── index.ts             # Public API exports
β”‚   β”œβ”€β”€ tests/                   # Test suites
β”‚   └── package.json
β”‚
└── stellar-pocketpay-docs/      # Documentation (this repo)
    β”œβ”€β”€ README.md
    β”œβ”€β”€ ARCHITECTURE.md
    β”œβ”€β”€ SETUP.md
    β”œβ”€β”€ CONTRIBUTING.md
    β”œβ”€β”€ CODE_OF_CONDUCT.md
    β”œβ”€β”€ ROADMAP.md
    β”œβ”€β”€ SECURITY.md
    └── ISSUES.md

✨ Key Features

πŸ“± Mobile Wallet

  • Wallet Management β€” Create, import, and securely store Stellar keypairs
  • Send & Receive XLM β€” Full payment flows with QR code support
  • Transaction History β€” Paginated, real-time transaction feed
  • Contact Book β€” Save and manage frequently used addresses
  • Savings Vault β€” Deposit, withdraw, and time-lock funds via Soroban
  • Testnet Funding β€” One-tap Friendbot integration for test XLM

πŸ” Savings Vault (Smart Contract)

  • Deposits & Withdrawals β€” Secure fund management on-chain
  • Time Locks β€” Lock funds for a specified duration
  • Emergency Withdrawal β€” Owner-only emergency access with penalties
  • Event Logging β€” Full audit trail via Soroban contract events

🧰 TypeScript SDK

  • Wallet Utilities β€” Generate keypairs, check balances, fund from Friendbot
  • Payment Operations β€” Build, sign, and submit XLM transactions
  • Vault Client β€” Typed interface for all Soroban vault operations
  • Fully Typed β€” Comprehensive TypeScript definitions for all APIs

πŸš€ Quick Start

Each repository has its own detailed setup guide. Here's the fastest way to get started:

# 1. Clone all repos
git clone https://github.com/Stellar-PocketPay/stellar-pocketpay-wallet.git
git clone https://github.com/Stellar-PocketPay/stellar-pocketpay-vault.git
git clone https://github.com/Stellar-PocketPay/stellar-pocketpay-sdk.git
git clone https://github.com/Stellar-PocketPay/stellar-pocketpay-docs.git

# 2. Set up the SDK
cd stellar-pocketpay-sdk
npm install
npm run build

# 3. Set up the wallet app
cd ../stellar-pocketpay-wallet
npm install
npx expo start

# 4. Set up the smart contract (requires Rust & Soroban CLI)
cd ../stellar-pocketpay-vault
cargo build
cargo test

For detailed setup instructions, see SETUP.md.


πŸ“– Documentation

Document Description
Architecture System design, data flow, and component relationships
Setup Guide Step-by-step setup for each repository
Contributing How to contribute, branch naming, commit conventions
Code of Conduct Community standards and expectations
Roadmap Planned features and milestones
Security Security practices and vulnerability reporting
Issue Guide Issue labels, templates, and good first issues

πŸ›  Tech Stack

Layer Technology
Mobile App React Native, Expo, TypeScript
State Management Zustand
Navigation React Navigation
Secure Storage expo-secure-store
Smart Contract Rust, Soroban SDK
SDK TypeScript, @stellar/stellar-sdk
Network Stellar Testnet / Soroban RPC

🀝 Contributing

We welcome contributions from developers of all experience levels! Whether you're fixing a typo, adding a feature, or improving documentation β€” every contribution matters.

  1. Read our Contributing Guide
  2. Check the Issue Guide for beginner-friendly tasks
  3. Follow our Code of Conduct

πŸ“„ License

All repositories in the Stellar PocketPay ecosystem are licensed under the MIT License.

MIT License

Copyright (c) 2026 Stellar PocketPay Contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

Built with πŸ’œ on Stellar

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors