What are Farcaster Mini Apps?

Farcaster Mini Apps are web applications that render inside Farcaster clients, providing interactive experiences beyond traditional social media posts. Think of them as mini websites that users can interact with directly within their Farcaster feed.

What does it mean to host Mini Apps?

As a Farcaster client developer, hosting Mini Apps means:
  • Embedding Mini Apps in your client interface (typically as webviews)
  • Managing the app lifecycle (launch, navigation, close)
  • Providing wallet integration so Mini Apps can access user’s crypto wallets
  • Implementing authentication to verify user identity to Mini Apps
  • Handling notifications when Mini Apps want to alert users

Essential implementation areas

Review and plan to implement each of these core host capabilities from the Farcaster Mini Apps specification:

🔐 Authentication & Identity

💰 Wallet Integration

  • Ethereum provider injection - EIP-1193 compatible wallet access (EIP-1193 spec)
  • Solana provider (experimental) - Multi-chain wallet support
  • Transaction signing - Secure transaction flows within Mini Apps

🎨 Host UI & UX

  • App surface rendering - Webview management with proper sizing (424x695px web, device dimensions mobile)
  • Header display - Show Mini App name and author
  • Splash screens - Loading states with custom branding
  • Navigation controls - Launch, close, and navigation between Mini Apps
  • Official libraries: React Native | Web

🔔 Notification System

  • Token management - Generate and manage notification tokens per user (Neynar implementation guide)
  • Event handling - Process Mini App lifecycle events (added, removed, notifications enabled/disabled)
  • Push delivery - Display notifications to users in your client
  • API integration: Frame Notifications API

📱 Mini App Discovery

  • App catalog - Browse available Mini Apps (Frame Catalog API)
  • Search functionality - Help users find relevant Mini Apps (Search Frames API)
  • Installation flow - Let users add Mini Apps to their client

Next steps

  1. Start with authentication - Implement SIWF or use SIWN for quick setup
  2. Add wallet integration - Inject Ethereum provider for transaction support
  3. Build the UI surface - Create webview container with proper sizing and navigation
  4. Enable notifications - Implement token management and event handling
  5. Add discovery - Integrate catalog and search APIs for Mini App browsing

Additional resources