Purro is a native-first wallet crafted for the Hyperliquid and HyperEVM ecosystems. Built with practical UX, developer enablement, and deep protocol alignment in mind.
Purro is a frictionless liquidity access layer for Hyperliquid + HyperEVMβnot just a key manager. Built on Alchemy infrastructure and Hyper-native primitives (names, gasless flows), Purro prioritizes intent-driven UX and developer extensibility.
- Native Hyperliquid Integration: Built specifically for Hyperliquid and HyperEVM ecosystems
- Gasless Workflows: Zero-fee transactions with native relayers (no HYPE needed)
- Unified Portfolio: Seamless view across Hyperliquid L1 and HyperEVM
- Developer-First: Standards-compliant provider and SDK modules
- Multichain-Ready: Designed to extend to Ethereum, Arbitrum, Base, Solana, and Sui
- Create new wallet with 12-word seed phrase
- Import wallet from seed phrase or private key
- Watch-only accounts for address monitoring
- Data encryption with password protection
- Auto-lock after inactivity period
- Password change and seed phrase management
- Hyperliquid EVM (mainnet & testnet) - Primary network
- Ethereum mainnet
- Arbitrum One
- Base mainnet
- Solana (in development)
- Sui (in development)
- In-App Swap Execution: Complete token swapping on HyperEVM network
- Advanced Token Search: Comprehensive token discovery with infinite scroll
- Real-Time Pricing: Live price feeds from GeckoTerminal API
- Gas Optimization: Intelligent gas estimation with safety buffers
- WRAP/UNWRAP Support: Seamless HYPE β WHYPE token conversion
- DApp Explorer: Curated directory with 11+ featured dApps
- Watchlist System: Star/unstar favorite dApps for quick access
- EIP-1193 standard support with multi-provider discovery (EIP-6963)
- EIP-712 typed data signing
- Provider injection for web pages
- Human-readable addresses: Send and receive using Hyperliquid Names (e.g.,
purro.hl) - Name resolution in transaction history
- Native integration with Hyperliquid ecosystem
- Default: 40% swap fee rebates for all users in early phase
- Boost: 50% tier by invite/eligibility (partners, builders, high-volume)
- Comprehensive Security Test Suite: 100+ security tests
- Encryption Validation: AES-256-GCM with PBKDF2 key derivation
- Session Management: Enhanced timeout and expiration handling
- Memory Safety: Secure cleanup and isolation
purro-extension/
βββ src/
β βββ background/ # Background scripts & service worker
β β βββ providers/ # Blockchain providers (EVM, Hyperliquid)
β β βββ handlers/ # Message handlers (accounts, storage, auth)
β β βββ lib/ # Core libraries (encryption, offscreen)
β β βββ types/ # Type definitions
β βββ client/ # React UI components
β β βββ components/ # Reusable UI components
β β βββ screens/ # App screens (main, swap, explorer, etc.)
β β βββ hooks/ # Custom React hooks
β β βββ services/ # API services (Alchemy, Etherscan, etc.)
β βββ assets/ # Static assets (icons, logos)
β βββ manifest.json # Extension manifest (v3)
βββ html/ # HTML entry points
βββ docs/ # Documentation
βββ public/ # Public assets
- Provider Manager: Manages blockchain providers and connections
- EVM Provider: EIP-1193 implementation for EVM chains
- Message Handler: Handles communication between UI and background
- Account Handler: Manages accounts, keys, and encryption
- Storage Handler: Encrypted storage management
- React 19.1.0 with TypeScript for type safety
- Zustand for state management with persistence
- TanStack Query 5.80.7 for data fetching and caching
- Tailwind CSS 4.1.8 for modern styling
- Framer Motion for smooth animations
- EIP-1193 compliant Ethereum provider
- EIP-6963 multi-provider discovery
- Content script injection into web pages
- Event system for dApp communication
- Node.js 18+
- pnpm (package manager)
- Chrome browser
# Clone the repository
git clone https://github.com/purro-xyz/purro-extension.git
cd purro-extension
# Install dependencies
pnpm install
# Build the extension
pnpm run build# Build and watch changes
pnpm run build:watch
# Type checking
pnpm run type-check
# Run tests
pnpm run test
# Run security tests
pnpm run test:security- Open Chrome and go to
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked" and select the
distfolder
- Install extension from Chrome Web Store (coming soon)
- Create new wallet or import existing wallet
- Create password to protect wallet
- Backup seed phrase securely
- Create new account for different chains
- Import private key or seed phrase
- Switch accounts easily
- View balances across multiple networks
- Connect wallet with dApps via EIP-1193
- Sign transactions securely with EIP-712 support
- Manage permissions per-site
- Switch networks as requested by dApp
- In-app token swapping on HyperEVM
- Real-time pricing from GeckoTerminal
- Gas optimization with intelligent estimation
- Transaction tracking with confirmation dialogs
Purro provides complete EVM provider API:
// Detect provider
const provider = window.ethereum; // or window.purro
// Connect wallet
const accounts = await provider.request({
method: 'eth_requestAccounts'
});
// Send transaction
const txHash = await provider.request({
method: 'eth_sendTransaction',
params: [{
from: accounts[0],
to: '0x...',
value: '0x...'
}]
});
// Sign message
const signature = await provider.request({
method: 'personal_sign',
params: ['Hello World!', accounts[0]]
});eth_requestAccounts- Request account accesseth_accounts- Get connected accountseth_chainId- Get current chain IDeth_sendTransaction- Send transactionpersonal_sign- Sign messageeth_signTypedData_v4- Sign typed data (EIP-712)wallet_switchEthereumChain- Switch chainwallet_addEthereumChain- Add new chain
// Listen for provider announcements
window.addEventListener('eip6963:announceProvider', (event) => {
const { detail } = event;
console.log('Provider found:', detail.info.name);
// Connect to Purro specifically
if (detail.info.rdns === 'xyz.purro.app') {
const provider = detail.provider;
// Use provider...
}
});# Run all tests
pnpm run test
# Run security tests
pnpm run test:security
# Run encryption tests
pnpm run test:encryption
# Run storage tests
pnpm run test:storage
# Full security audit
pnpm run security:checkOpen test-dapp-detection.html in browser to test provider functionality.
- AES-256-GCM encryption for sensitive data
- PBKDF2 key derivation from password
- Secure random seed generation with
crypto.getRandomValues() - Memory cleanup for sensitive data
- Origin validation for all requests
- User confirmation for transactions
- Per-site permissions management
- Session timeout protection
- Never store private keys in plaintext
- Always verify transaction details
- Comprehensive security tests (100+ tests)
- Regular security audits
- β Multi-chain wallet functionality - Ethereum, Arbitrum, Base, HyperEVM
- β dApp integration - EIP-1193, EIP-6963, EIP-712 standards
- β Basic DeFi operations - Send, receive, portfolio management
- β Security framework - Encryption, authentication, session management
- β Provider system - EVM provider with multi-wallet discovery
- β UI/UX foundation - React 19, Tailwind CSS, responsive design
- β In-app swap functionality - Complete HyperEVM token swapping
- β DApp explorer - Curated directory with watchlist system
- β Advanced token management - Search, discovery, real-time pricing
- β Enhanced security - 100+ security tests, comprehensive audits
- β Performance optimizations - Smart caching, incremental fetching
- β Notifications system - Beta announcements and updates
- β Hyperliquid DEX integration - Deposit, transfer, portfolio tracking
- π Solana integration - Full Solana network support
- π Sui integration - Sui blockchain compatibility
- π Enhanced DeFi integrations - More protocols and dApps
- π Advanced portfolio analytics - Charts, P&L tracking, performance metrics
- π Hardware wallet support - Ledger, Trezor integration
- π Mobile app development - iOS and Android applications
- π Account abstraction (EIP-4337) - Smart contract wallets
- π Gasless onboarding - Zero-fee user registration
- π Advanced trading features - Limit orders, DCA, portfolio rebalancing
- π Social features - Transaction sharing, community features
- π Multi-language support - Internationalization (i18n)
- π Advanced bridging - One-click cross-chain transfers
- π Token launcher integration - In-app token creation and deployment
- π Referral & reward system - Fee rebates and incentive programs
- π Community plugin layer - Developer mini-app/extension support
- π Liquidity incentive tracker - Farming, staking, yield optimization
- π Advanced identity system - NFT-based identity and reputation
- π Cross-surface continuity - Seamless experience across devices
- π AI-powered features - Smart recommendations and automation
We welcome contributions from the community! Here's how you can help:
- 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 - Create a Pull Request
- TypeScript for type safety
- ESLint for code quality
- Prettier for code formatting
- Conventional commits for commit messages
- Comprehensive testing for new features
- Use GitHub Issues
- Provide detailed steps to reproduce
- Include browser and extension version
- Attach console logs if available
- Discord: Join our community
- Twitter: @purro_xyz
- Telegram: https://t.me/purro_xyz
- Official Docs: docs.purro.xyz
- API Documentation: docs/EVM_PROVIDER_README.md
- Architecture Guide: docs/evm-provider-architecture.md
- Features Guide: docs/FEATURES_BUILDING.md
- Homepage: https://purro.xyz
- Install: https://purro.xyz/install
This project is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License (CC BY-NC-ND 4.0).
Key Terms:
- β Copy & Share - Free to copy and redistribute for educational purposes
- β Study & Learn - Can study and learn from the code
- β Contribute - Welcome pull requests and issues
- β No Commercial Use - Cannot use for commercial purposes
- β No Derivatives - Cannot modify and redistribute
- π Attribution Required - Must credit Purro Team when sharing
Commercial Licensing: For commercial use or derivative works, contact: thaiphamngoctuong@gmail.com
License Link: https://creativecommons.org/licenses/by-nc-nd/4.0/
See the LICENSE file for complete terms and conditions.
Purro was created with the goal of making Hyperliquid and HyperEVM accessible and secure for everyone. We believe that DeFi and blockchain technology will change the future of finance, and Purro is the bridge that helps users easily participate in this new world.
Our mission is to provide:
- Intent-aware UX: Clear, contextual signing and gasless workflows
- Ecosystem-native features: Hyperliquid Names, one-click bridging, and reliable swaps
- Builder-first approach: Standards-compliant provider and SDK modules
- Multichain-ready design: Extensible to Ethereum, Arbitrum, Base, Solana, and Sui
π Made with love by the Purro Team π±
Purro v0.6.8 - Enhanced Stability & Compatibility