Shotty is an intelligent AI butler that brings conversational simplicity to Flow Network. No more complex forms, confusing interfaces, or wallet addresses to copy-paste.
Live: https://shotty-beta.vercel.app/
Transform complex blockchain operations into simple conversations
Shotty is an intelligent AI butler that brings conversational simplicity to Flow Network. No more complex forms, confusing interfaces, or wallet addresses to copy-paste. Just chat naturally with Shotty to:
💸 Send tokens across chains
🎨 Mint NFTs with IPFS storage
🌐 Register .flow domains
👤 Manage contacts on-chain
🔗 Create payment links anyone can redeem
📊 Track transactions and view history
📱 Generate QR codes for wallet addresses
🪙 Create ERC20 tokens with custom parameters
🌉 Bridge tokens across multiple blockchain networks
⚡ Batch EVM transactions for efficient multi-operation execution
⏰ Schedule transactions for future execution with time-locks
🔄 Flow Actions for composable transaction workflows
💰 Lending & Borrowing with DeFi protocols integration
Powered by: AI + Flow Network EVM + DeFi Protocols
Feature | Description | Smart Contract | Status |
|---|---|---|---|
💸 Token Transfers | Send tokens cross-chain with natural language | Native Flow Network | ✅ Live |
🔗 Payment Links | Create shareable, redeemable token links |
| ✅ Live |
🎨 NFT Minting | Mint NFTs with IPFS storage via Pinata |
| ✅ Live |
🖼️ NFT Gallery | View and manage your NFT collection | Same as NFT Minting | ✅ Live |
🌐 Domain Registration | Register .flow domains on Flow Network |
| ✅ Live |
👤 Contact Manager | On-chain address book with friendly names |
| ✅ Live |
📄 Document Storage | Secure IPFS document storage with on-chain refs |
| ✅ Live |
💰 Balance Checker | Real-time wallet balance queries | Native Flow Network | ✅ Live |
📊 Transaction History | View recent blockchain transactions | Block Explorer API | ✅ Live |
📱 QR Code Generator | Generate scannable QR codes for wallet addresses | Client-side Generation | ✅ Live |
🪙 ERC20 Token Factory | Create custom ERC20 tokens with your parameters |
| ✅ Live |
🔄 Token Ownership Transfer | Transfer ownership of created ERC20 tokens | Same as Token Factory | ✅ Live |
📋 Token Portfolio | View all ERC20 tokens you've created | Same as Token Factory | ✅ Live |
🌉 Cross-Chain Bridge | Bridge tokens across 20+ blockchain networks | DeFi Aggregator (Mainnet Only) | ✅ Live |
⚡ Batch EVM Transactions | Execute multiple EVM operations in a single transaction |
| ✅ Live |
⏰ Scheduled Transactions | Schedule transactions with time-locks and future execution |
| ✅ Live |
🔄 Flow Actions | Composable transaction workflows with connectors |
| ✅ Live |
💰 Lending & Borrowing | Lend assets to earn interest or borrow against collateral |
| ✅ Live |
Category | Example Command | What It Does |
|---|---|---|
💸 Sending |
| Transfers 1 FLOW token to the address |
| Sends to saved contact "Alice" | |
🔗 Payment Links |
| Generates shareable redemption link |
| Creates 5 FLOW redeemable link | |
🎨 NFTs |
| Opens guided NFT minting flow |
| Displays your NFT collection | |
| Transfers NFT token #42 | |
🌐 Domains |
| Registers myname.flow domain |
| Looks up domain owner address | |
| Transfers domain ownership | |
| Updates domain resolution | |
| Lists all domains you own | |
| Checks domain availability | |
| Extends domain expiration | |
👤 Contacts |
| Saves Alice to address book |
| Lists all saved contacts | |
| Searches for contact Bob | |
| Updates Alice's address | |
| Deletes Bob from contacts | |
💰 Balance |
| Shows your wallet balance |
| Same as above | |
📊 History |
| Displays last 10 transactions |
| Shows last 5 transactions | |
📱 QR Codes |
| Creates QR for your wallet |
| Generates QR for specific address | |
🪙 ERC20 Tokens |
| Deploys new ERC20 token |
| Transfers token ownership | |
| Lists all created ERC20 tokens | |
🌉 Cross-Chain Bridge |
| Opens bridge modal to transfer tokens across chains |
| Opens modal with Flow to Ethereum pre-configured | |
| Opens cross-chain bridge interface | |
⚡ Batch Transactions |
| Executes multiple operations in single transaction |
| Approves and swaps in one transaction | |
⏰ Scheduled Transactions |
| Creates time-locked transaction for future |
| Schedules transaction with specific date | |
| Cancels pending scheduled transaction | |
🔄 Flow Actions |
| Builds composable transaction workflow |
| Runs complex DeFi action sequence | |
💰 Lending & Borrowing |
| Deposits assets into lending pool |
| Takes loan against deposited collateral | |
| Shows current loans and deposits | |
| Repays borrowed amount with interest |
┌─────────────────────────────────────────────────────────┐
│ Frontend Layer │
│ Next.js 15 • React 19 • TypeScript • Tailwind CSS │
└─────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────┐
│ AI Layer │
│ OpenAI • Intent Parser • NLP │
└─────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────┐
│ Blockchain Layer │
│ Flow Network EVM • Ethers.js • Viem • DiFi │
└─────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────┐
│ Storage Layer │
│ Pinata (IPFS) • On-Chain Metadata │
└─────────────────────────────────────────────────────────┘
Node.js 18+
npm or yarn
MetaMask or any Web3 wallet
OpenAI API Key (Get one here)
Pinata Account (Sign up) for IPFS
Clone the repository
git clone https://github.com/jintukumardas/shotty
cd shottyInstall dependencies
Set up environment variables
cp .env.example .env.localConfigure .env.local
# Flow Network ConfigurationNEXT_PUBLIC_FLOW_CHAIN_RPC=https://testnet.evm.nodes.onflow.org
NEXT_PUBLIC_FLOW_CHAIN_ID=545NEXT_PUBLIC_FLOW_NETWORK=testnet
# OpenAIOPENAI_API_KEY=sk-proj-your-key-here
# Pinata (IPFS)NEXT_PUBLIC_PINATA_JWT=your-pinata-jwt
NEXT_PUBLIC_PINATA_GATEWAY=your-gateway.mypinata.cloud
# Deployed Contracts (Flow EVM Testnet)NEXT_PUBLIC_ESCROW_CONTRACT_ADDRESS=0x5d726C51a99a0F78a05b5ab1591340B321778e75
NEXT_PUBLIC_NFT_CONTRACT_ADDRESS=0x332ee5D730cBFD516Bac7D1e0CFf763d235dFF0A
NEXT_PUBLIC_DOMAIN_CONTRACT_ADDRESS=0x55422db56C11a62AfB285e70c6a541A9E80B70f3
NEXT_PUBLIC_ADDRESSBOOK_CONTRACT_ADDRESS=0x4354BE4A734E3DC61182F0e09Bc5B0cc264CC218
NEXT_PUBLIC_SECURESTORAGE_CONTRACT_ADDRESS=0x42D2e14cb7d931216F0154625db3dA4F3e90525B
NEXT_PUBLIC_TOKEN_FACTORY_CONTRACT_ADDRESS=0xbb3E64F2D72ac754c7C98eC43b549F0F78bd26a0
NEXT_PUBLIC_BATCH_CONTRACT_ADDRESS=0xC3d8AfB3462f726Db9d793DefdCFC67D7E12DBa3
NEXT_PUBLIC_SCHEDULED_CONTRACT_ADDRESS=0xfF0e7F71a0e19E0BF037Bd90Ba30A2Ee409E53a7
NEXT_PUBLIC_FLOW_ACTIONS_CONTRACT_ADDRESS=0xe4ab654a03826E15039913D0D0E1E4Af2117bA0d
NEXT_PUBLIC_LENDING_CONTRACT_ADDRESS=0x3b4cAE62020487263Fc079312f9199a1b014BF6bRun development server
npm run devOpen your browser
http://localhost:3000Get testnet tokens
Visit Flow Testnet Faucet
Connect your wallet
Request test FLOW tokens
Connect Wallet - Click the wallet button in the top right
Get Test Tokens - Use the faucet link in the dashboard
Start Chatting - Type natural language commands in the chat
You: "What's my balance?"Shotty: You have 10.5 FLOW on Flow EVM Testnet
You: "Send 1 FLOW to 0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb"Shotty: I'll send 1 FLOW to 0x742d... Please confirm.
[Confirm] [Cancel]
You: [Confirm]
Shotty: ✅ Transaction sent! Hash: 0xabc...def
View on explorer →
You: "Mint an NFT"Shotty: Let me help you mint an NFT! Please provide:
- Name
- Description
- Image upload
[Opens NFT minting modal]
Contract | Address | Explorer | Purpose |
|---|---|---|---|
Payment Links Escrow |
| Token redemption links | |
Universal NFT |
| NFT minting & transfers | |
Domain Registry |
| .flow domain registration | |
Address Book |
| On-chain contact manager | |
Secure Storage |
| IPFS document storage | |
ERC20 Token Factory |
| Custom ERC20 token deployment | |
Batch Transactions |
| Multi-operation batch execution | |
Scheduled Transactions |
| Time-locked transaction scheduling | |
Flow Actions |
| Composable workflow engine | |
Lending Protocol |
| DeFi lending & borrowing |
🌐 Flow Network: flow.com
📖 Documentation: Flow Developers
🔍 Block Explorer: Flow EVM Testnet Explorer
💧 Testnet Faucet: Flow Testnet Faucet
🚀 Flow Actions & Workflows: Forte Upgrade Overview
⚡ Batched EVM Transactions: Tutorial
⏰ Scheduled Transactions: Introduction
🔄 Flow Actions Introduction: Getting Started
🔌 Flow Actions Connectors: Documentation
🧩 Basic Combinations: Composing Actions
📝 Flow Actions Transactions: Transaction Guide
🏗️ Building Frontend Apps: Frontend Integration
🔗 Smart Contract Interaction: Interaction Guide
🎼 Compose with Transactions: Transaction Composition
📊 Native Data Availability: Scripts Guide
🔢 Fixed Point Math (128-bit): Math Library
This project is licensed under the MIT License - see the LICENSE file for details.
💜 Flow Foundation - For creating the Flow Network and EVM compatibility
🌟 Flow Community - For continuous support and feedback
🤖 OpenAI - For GPT powering the AI butler
📌 Pinata - For reliable IPFS infrastructure
🐛 Report Issues: GitHub Issues
💬 Discussions: GitHub Discussions
📧 Email: jintudas098@gmail.com
🐦 Twitter: @jintuisbusy
MVP is Ready
Bootstrap