SocketFi is a modular smart account infrastructure built on Soroban (Stellar), enabling embedded self-custody through passkeys, social authentication, account abstraction, and programmable transaction execution.
SocketFi provides a production-ready smart contract system for:
- Smart account deployment
- Passkey-based authentication
- Programmable transaction execution
- Upgradeable protocol architecture
- Shared libraries for reusable logic
The protocol is designed around a modular architecture where each contract has a well-defined responsibility while remaining composable with the rest of the system.
The current workspace consists of the following packages.
Responsible for:
- Deploying new smart accounts
- Initializing wallet configuration
- Managing protocol-wide deployment logic
The primary smart account implementation providing:
- Passkey authentication
- Transaction execution
- Multi-operation support
- Asset management
- Authorization validation
- Extensible account abstraction
Common protocol functionality including:
- Shared types
- Utility functions
- Authentication helpers
- Token helpers
- Serialization helpers
- Common interfaces
Provides reusable governance upgrade utilities including:
- Upgrade authorization
- Contract migration helpers
- Version management
- Safe upgrade patterns
Factory
│
└──── deploys ─────► Wallet
│
│ uses
▼
Shared
Factory ───────────────► Upgrade
Wallet ────────────────► Upgrade
Wallet ────────────────► Shared
Factory ───────────────► Shared
- Passkey-native authentication
- Self-custodial architecture
- Secure transaction execution
- Flexible authorization model
- Soroban-native account abstraction
- Permissionless wallet creation
- Deterministic deployment
- Factory-managed initialization
- Passkey support
- Signature verification
- Extensible authentication framework
- Governance-compatible upgrade utilities
- Safe migration support
- Versioned contracts
- Reusable utilities
- Shared protocol types
- Consistent interfaces
- Reduced code duplication
/factory
/wallet
/shared
/upgrade
- Rust (stable)
- Soroban SDK
- Cargo
cargo build --releasecargo test- Modularity — Each package has a single responsibility.
- Security First — Authentication and validation are enforced throughout the protocol.
- Composability — Components are designed to work together while remaining independently reusable.
- Determinism — Smart account behavior is predictable and reproducible.
- Maintainability — Shared libraries reduce duplication and simplify future development.
- A user requests a new smart account.
- The Factory deploys and initializes a Wallet.
- The Wallet authenticates the user using a passkey.
- The Wallet validates authorization.
- The requested transaction is executed.
- Future protocol upgrades are managed through the Upgrade library.
socketfi/
├── factory/
├── wallet/
├── shared/
├── upgrade/
└── README.md
- Wallet deployment is permissionless.
- Authentication is built around passkeys.
- Contracts share reusable logic through the Shared package.
- Upgrade functionality is isolated to simplify governance and maintenance.
This project is licensed under the Apache License 2.0. See the LICENSE file for details.