A Farcaster mini app that allows users to record a 5-second audio clip and create an ERC-20 token using Clanker.
- Record audio clips up to 5 seconds long
- Automatically generate a summary of the audio content
- Create an ERC-20 token on Base using Clanker
- Automatically generate token name and symbol from audio summary
- Multiple wallet connection options (Farcaster and Coinbase Wallet)
- Farcaster Frame SDK
- Clanker for ERC-20 token creation
- React + TypeScript
- Vite
- Wagmi for wallet connections
- Coinbase Wallet SDK for wallet integration
- Web Audio API for audio recording
- Node.js (v16 or higher)
- npm or yarn
- A Farcaster account
- A compatible wallet (e.g., Metamask, Coinbase Wallet)
- Clone this repository
- Install dependencies:
npm install- Start the development server:
npm run dev- Open your browser and navigate to
http://localhost:5173
- Connect your wallet by clicking either "Connect with Farcaster" or "Connect Coinbase Wallet"
- Click "Start Recording" to begin recording audio
- Speak for up to 5 seconds (recording will automatically stop after 5 seconds)
- Wait for the summary to be generated
- Click "Create Token from Audio" to create an ERC-20 token based on your audio
- Once created, you'll see the token address, symbol, and name
In development mode, you can use the "Simulate Connected" button to test the app without connecting a real wallet.
The application has been prepared for deployment with production URLs configured. To deploy the mini app:
- Build the app (already done):
npm run build- Deploy the contents of the
distfolder to your hosting provider (Vercel recommended) - Verify that the Farcaster Frame integration works correctly using the Farcaster Frame Validator
For detailed deployment instructions, see the DEPLOYMENT.md guide, which includes:
- Step-by-step instructions for deploying to Vercel, Netlify, or GitHub Pages
- Post-deployment verification steps
- Troubleshooting common issues
- Future enhancement recommendations
The app uses Clanker to create ERC-20 tokens on the Base network. Clanker is a set of smart contracts that create token markets which reward token creators.
The app interacts with the Clanker contract using the deployToken function:
function deployToken(
string name,
string symbol,
uint256 initialSupply,
uint24 fee,
uint160 sqrtPriceX96,
uint256 lockAmount,
uint256 lockDuration
) external returns (address token, address pool);To use the actual Clanker contract, update the CLANKER_CONTRACT_ADDRESS constant in src/components/AudioTokenMinter.tsx.
MIT