A comprehensive web-based tool for creating and managing Multi-Purpose Tokens (MPTs) on the XRP Ledger mainnet. Built with React and the XRPL JavaScript library, this tool provides an intuitive interface for token creation, issuance, and management.
- Step-by-step wizard for creating MPT tokens
- Comprehensive metadata support including name, description, icon, and weblinks
- Flexible token configuration with decimal places, max supply, and transfer fees
- Advanced permissions including lock, auth, escrow, and transfer controls
- MPToken Manager for viewing and managing authorizations
- Clean up tool for removing unused token authorizations
- Balance checker to verify token holdings
- Multi-wallet support for checking any address
- Session persistence - Resume your progress after page refresh
- Wallet reconnection - Easy reconnection when returning to the app
- Error handling - Clear error messages with troubleshooting guidance
- Transaction validation - Ensures all transactions are properly validated on-ledger
- Frontend: React 18 with Material-UI components
- Blockchain: XRPL (XRP Ledger) mainnet integration
- Libraries: xrpl.js v4.2.5 for blockchain interaction
- Styling: Tailwind CSS for responsive design
- An XRPL wallet with XRP for transaction fees
- Modern web browser (Chrome, Firefox, Safari, Edge)
- Basic understanding of XRPL and token concepts
- Visit the live app at your-netlify-url.netlify.app
- No installation required
./start.sh# Clone this repository
git clone https://github.com/yourusername/mpt-minter.git
cd mpt-minter
# Install dependencies
cd frontend
npm install
# Start development server
npm run devThe app will open at http://localhost:3000
-
Connect Your Wallet
- Enter your wallet's secret key (starts with 's')
- The app will connect to XRPL mainnet automatically
-
Create Your Token
- Follow the step-by-step wizard
- Configure your token properties
- Review and create on mainnet
-
Issue Tokens
- Authorize a holder wallet
- Issue tokens to the authorized holder
- Verify the transaction on-chain
-
Token Information
- Symbol: 3-12 character identifier (e.g., "USD", "GOLD")
- Name: Full descriptive name
- Description: Detailed information about your token
- Scale: Number of decimal places (0-15)
-
Token Properties
- Maximum Supply: Total tokens that can exist (optional)
- Transfer Fee: Percentage fee on transfers (0-50%)
- Special Features: Lock, auth requirements, escrow, etc.
-
Metadata (Optional)
- Icon URL: Link to token logo
- Asset Class: Category (RWA, stablecoin, gaming, etc.)
- Weblinks: Official sites, docs, social media
Use the MPT Manager (bottom-right button) to:
- View all tokens you've created
- Check tokens you're authorized to hold
- Remove unused authorizations (zero balance)
- Inspect any wallet's token holdings
With the enhanced scaling system:
- Enter the actual amount you want (e.g., 1000 = 1000 tokens)
- The system automatically handles decimal conversion
- Scale only affects display precision, not entry
This occurs when:
- The holder hasn't been authorized for the specific token
- You're trying to use an old authorization for a new token
- Solution: Use MPT Manager to check and clean up authorizations
- Ensure you're connected to the internet
- Check if XRPL mainnet is operational
- Try the reconnect button in the connection status
- Verify sufficient XRP balance for fees
- Check all required fields are filled
- Review error messages for specific issues
This is an EXPERIMENTAL tool for TESTING and EDUCATIONAL purposes:
- Never use with high-value mainnet wallets
- The tool stores data in browser session only
- No private keys are transmitted to any server
- Always use dedicated test wallets when experimenting
This tool implements:
- XLS-33: Multi-Purpose Tokens (MPT) standard
- XLS-0089d: MPT metadata specification
- Full compliance with XRPL mainnet requirements
Contributions are welcome! Please:
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- XRPL Foundation for the MPT standard
- Ripple for the xrpl.js library
- The XRPL community for testing and feedback
- Issues: GitHub Issues
- Documentation: XRPL MPT Docs
- Community: XRPL Discord
cd frontend
npm run buildThe production files will be in frontend/dist/ ready for deployment.
mpt-minter/
βββ frontend/ # React application
β βββ src/
β β βββ components/ # UI components
β β βββ services/ # Business logic
β β βββ hooks/ # Custom React hooks
β β βββ utils/ # Utilities
β βββ package.json
βββ old-version/ # Original HTML files (backup)
βββ netlify.toml # Deployment configuration
βββ start.sh # Quick start script
Disclaimer: This tool interacts with the XRPL mainnet. Always verify transactions and use at your own risk. The authors are not responsible for any loss of funds or unintended token creation.
