Native, institution-ready security tokens on Solana
SRWA (Solana Real-World Assets) brings real-world assets to DeFi without bridges or intermediaries. Our tokens embed offering rules, compliance policies, investor restrictions, and institutional governance directly on-chain, enabling issuers and investors to interact with programmable RWAs that stay 100% on Solana.
Traditional RWA wrappers lack enforceable rules, accountability, and on-chain auditability. SRWA introduces a Solana-native token standard that carries governance, compliance, and distribution logic inside the asset itself.
- π Built-in Compliance: Transfer hooks enforce KYC/AML at the token level
- π¦ Institutional Grade: Designed for regulated financial institutions
- β‘ Lightning Fast: Leverages Solana's 400ms block time and low fees
- π DeFi Compatible: Works seamlessly with MarginFi, Solend, Jupiter, and more
- π‘οΈ On-chain Governance: Transparent, auditable, and programmable
programs/ # Anchor smart contracts (SRWA standard)
βββ srwa_factory/ # Token factory with SPL Token-2022
βββ identity_claims/ # KYC/AML identity registry
βββ compliance_modules/ # Jurisdiction, sanctions, lockups
βββ srwa_controller/ # Transfer hook orchestrator
βββ offering_pool/ # Capital formation lifecycle
βββ purchase_order/ # OTC-style order flow
βββ ...
frontend/ # React + Vite institutional dashboard
βββ src/
β βββ components/ # UI components
β βββ hooks/ # Solana & SRWA hooks
β βββ contexts/ # Wallet & program contexts
β βββ pages/ # Dashboard pages
βββ ...
tests/ # Anchor integration tests
examples/ # End-to-end scripts
All programs are written in Rust with Anchor. Program IDs are configured in Anchor.toml and loaded dynamically in the frontend.
| Program | Purpose | Key Instructions |
|---|---|---|
| srwa_factory | Token factory for SPL Token-2022 with transfer hooks, metadata, offering state | create_srwa, request_srwa, approve_srwa, register_user |
| identity_claims | Identity registry with topic-based claims (KYC, AML, Accredited) | register_identity, add_claim, revoke_claim, is_verified |
| compliance_modules | Pluggable policies: jurisdictions, sanctions, lockups, investor limits | configure_jurisdiction, set_sanctions, set_lockup |
| srwa_controller | Token-2022 transfer hook orchestrator for compliance checks | on_transfer, transfer_checked |
| offering_pool | Capital formation lifecycle (open, subscribe, lock, settle, refund) | open, subscribe, lock, settle, refund |
| purchase_order | OTC-style order flow with SOL escrow | create_order, approve_order, cancel_order |
SRWAConfig,OfferingState,ValuationData: Per-mint configuration PDAsPlatformAdminRegistry,KYCProviderRegistry,IssuerKYCConfig: Governance registriesUserRegistry: Wallet-level role, KYC status, activation flagsIdentityAccount&ClaimAccount: Identity graph with topic IDsJurisdictionConfig,SanctionsList,LockupAccount: Modular compliance state
- Single integration surface for DeFi-ready distribution
- Force transfer, freeze, lockups with event logging
- Built-in compliance eliminates manual checks
- Deposit SRWA as collateral, borrow stablecoins
- Access to Solana DeFi: lending, swaps, yield
- Transparent pricing and compliance status
- Plug-and-play SRWA support via transfer hooks
- Pre-flight eligibility checks avoid failed transactions
- Integration allowlist for authorized protocols
- Rust 1.75+
- Solana CLI 1.18+
- Anchor CLI 0.31.1+
- Node.js 18+ (Node 22 recommended)
# Install Anchor CLI
cargo install --git https://github.com/coral-xyz/anchor --tag v0.31.1 anchor-cli
# Configure Solana
solana-install init 1.18.0
solana config set --url devnet# Clone repository
git clone https://github.com/your-org/srwa-protocol
cd srwa-protocol
# Build all programs
anchor build
# Run tests
anchor test# Deploy to devnet
anchor deploy --provider.cluster devnet
# Or deploy to localnet
solana-test-validator --reset
anchor deploy --provider.cluster localnetThe frontend is a React 18 + Vite 7 + TypeScript institutional dashboard with Solana wallet integration.
cd frontend
npm install
npm run devCreate frontend/.env:
VITE_SOLANA_NETWORK=devnet
VITE_SOLANA_RPC_URL=https://api.devnet.solana.com
VITE_ENABLE_DASHBOARD=trueIntegrated with @solana/wallet-adapter:
- Phantom
- Backpack
- Solflare
- Torus
npm run build
# Output in frontend/dist/Every SRWA transfer triggers compliance checks:
- Global Pause Check: System-wide pause state
- Account Frozen Check: Individual account freeze
- Integration Allowlist: Authorized protocol check
- Identity Verification: KYC/AML claim validation
- Jurisdiction Module: Geographic restrictions
- Sanctions Module: OFAC/sanctions list
- Accredited Module: Investor accreditation
- Lockup Module: Time-based restrictions
- Max Holders Module: Holder count limits
0 OK
10 PAUSED
11 FROZEN_FROM
12 FROZEN_TO
13 NOT_ALLOWED_OPERATOR
14 FROM_NOT_VERIFIED
15 TO_NOT_VERIFIED
20 SANCTIONS_DENY
21 JURISDICTION_DENY
22 WINDOW_CLOSED
23 NOT_ACCREDITED
24 LOCKUP_ACTIVE
25 MAX_HOLDERS_EXCEEDED
- Connect wallet β Register role (requires admin approval)
- Submit
request_srwawith token config - Admin approves via
approve_srwa - Open offering, accept subscriptions
- Settle distribution to investors
- Register identity β Obtain KYC/AML claims
- Subscribe to offerings
- Receive SRWA via settlement
- Hold or transfer (subject to compliance)
- Initialize
PlatformAdminRegistry - Manage KYC providers and allowlists
- Approve/reject SRWA requests
- Monitor compliance events
The frontend uses a modern glassmorphism design with Solana branding:
- Primary Purple:
#9945FF(Solana brand) - Secondary Green:
#14F195(Success) - Accent Orange:
#FF6B35 - Background: Deep black
#0A0A0A
- Built with Radix UI primitives
- Styled with TailwindCSS
- Glassmorphism effects and gradients
- Animated transitions and micro-interactions
- β Core smart contracts deployed
- β Transfer hook compliance pipeline
- β Identity claims & KYC registry
- β Frontend dashboard MVP
- π Integration testing
- Pyth Oracle integration
- Yield adapter (MarginFi/Solend)
- Offering pool treasury logic
- Advanced analytics dashboard
- Cashflow engine for structured products
- Mainnet deployment
- Institutional partnerships
- Governance enhancements
- Mobile app
- Additional compliance modules
- Smart Contracts: See inline documentation in
programs/ - Frontend: Component docs in
frontend/src/components/ - API Reference: TypeScript types in
frontend/src/types/ - Integration Guide: Examples in
examples/
We welcome contributions! Please follow these guidelines:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow Rust and TypeScript best practices
- Write tests for new features
- Update documentation
- Maintain consistent code style
This project is licensed under the MIT License - see the LICENSE file for details.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Discord: Join our community
- Twitter: @SRWAProtocol
Built with:
- Anchor - Solana development framework
- SPL Token-2022 - Next-gen token standard
- Solana - High-performance blockchain
- React - UI framework
- Vite - Build tool
Built with Anchor β on Solana βοΈ
Bringing institutional RWAs to programmable DeFi liquidity