Experience the power of Hoosat's lightning-fast transactions directly in MetaMask
Hoosnap is a MetaMask Snap that brings native Hoosat Network (HTN) support to MetaMask, enabling users to send, receive, and manage HTN tokens with secure, non-custodial wallet functionality and fast transaction speeds.
- β‘ Lightning Fast Transactions - Experience near-instant confirmations with Hoosat's blockDAG technology
- π Secure & Non-Custodial - Your private keys never leave MetaMask
- π Real-Time Insights - Track transaction history and monitor UTXO health
- π§ Advanced UTXO Management - UTXO compounding and optimization tools
- π Seamless Integration - Built natively for MetaMask using Snaps technology
- π Open Source - Fully open source and community-driven
- MetaMask Flask (required for Snaps)
- Node.js 18.6.0 or higher
- Yarn package manager
-
Clone the repository
git clone https://github.com/your-org/kaspa-metamask-snap.git cd kaspa-metamask-snap -
Install dependencies
yarn install
-
Start development environment
yarn start
-
Open the local website
- Navigate to
http://localhost:8000 - Follow the installation prompts to connect Hoosnap to MetaMask Flask
- Navigate to
This monorepo contains two main packages:
-
packages/snap/- The MetaMask Snap implementation- Written in TypeScript
- Handles Hoosat wallet operations, transactions, and UTXO management
- Integrates with Hoosat Network APIs
-
packages/site/- The landing page and documentation- Built with Gatsby and React
- Modern UI for snap installation and interaction
- Real-time connection status and error handling
# Start both snap and website in development mode
yarn start
# Or run individually
yarn workspace snap start # Snap development
yarn workspace site start # Website development# Run all tests
yarn test
# Run snap tests only
yarn workspace snap test
# Run tests with coverage
yarn test --coverage# Check for linting issues
yarn lint
# Auto-fix linting issues
yarn lint:fix
# Format code
yarn prettier:write- Wallet Management - Generate and manage Hoosat addresses
- Balance Checking - Real-time HTN balance updates
- Transaction Sending - Send HTN with custom fees and recipients
- Transaction History - View complete transaction history with pagination
- UTXO Operations - View, compound, and optimize UTXOs
- Network Status - Monitor connection to Hoosat Network
The snap integrates with:
- Hoosat Network APIs for transaction broadcasting
- Hoosat Explorer for transaction details and history
- Hoosat SDK for cryptographic operations and UTXO management
- Network: Hoosat Mainnet
- Token: HTN (Hoosat Token)
- Explorer: https://explorer.hoosat.fi/
- API: Hoosat Network REST API
Create .env files in the respective packages:
packages/snap/.env
# Snap configuration
SNAP_ENV=developmentpackages/site/.env
# Website configuration
GATSBY_SNAP_ORIGIN=local:http://localhost:8080- Snap behavior - Modify
packages/snap/src/index.ts - UI components - Update files in
packages/snap/src/ui/ - API endpoints - Configure in
packages/snap/src/api/
# Build both packages
yarn build
# Build snap only
yarn workspace snap build
# Build website only
yarn workspace site build- Update version in
packages/snap/package.json - Build the snap:
yarn workspace snap build - The built snap will be in
packages/snap/dist/ - Follow MetaMask's publishing guidelines for snap distribution
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and add tests
- Ensure all tests pass:
yarn test - Lint your code:
yarn lint:fix - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
Hoosnap prioritizes security:
- No Private Key Exposure - Private keys are generated and stored securely within MetaMask
- Isolated Execution - Runs in MetaMask's secure Snaps environment
- Open Source - All code is publicly auditable
- Regular Updates - Actively maintained with security patches
This project is licensed under the MIT License - see the LICENSE file for details.
- Hoosat Network: https://network.hoosat.fi/
- Hoosat Explorer: https://explorer.hoosat.fi/
- MetaMask Snaps: https://metamask.io/snaps/
- MetaMask Flask: https://metamask.io/flask/
Need help?
- π Check the documentation
- π Report issues on GitHub Issues
- π¬ Join our community discussions
- π§ Contact the development team
Built with β€οΈ for the Hoosat Network community