Summary
Add support for Farcaster Mini Apps in herocast, allowing users to discover, interact with, and launch mini apps directly within the client.
Background
Mini Apps are interactive applications built on Farcaster that provide rich, app-like experiences within the social feed. Supporting mini apps would bring herocast to parity with other Farcaster clients and give power users access to the growing mini app ecosystem.
Proposed Features
Technical Requirements
Core Host Responsibilities
- SDK Communication - JavaScript
postMessage channel for iframe communication
- Splash Screen - Display branded splash until app calls
sdk.actions.ready()
- Header Display - Show app name/author from manifest above the mini app
- Viewport - Render in vertical modal at 424x695px on web
- Manifest Verification - Fetch and validate
/.well-known/farcaster.json from each app's domain
Wallet Provider Integration
Mini apps access wallets via the SDK:
const ethProvider = sdk.wallet.getEthereumProvider() // EIP-1193 compatible
const solProvider = sdk.wallet.getSolanaProvider() // Wallet Standard compatible
Approach Options:
| Approach |
Pros |
Cons |
| Pass-through to browser wallet |
Native UX, user keeps existing wallet |
Cross-origin iframe security complexity |
| Herocast as wallet proxy |
Unified experience, controlled signing flow |
Additional implementation overhead |
| WalletConnect bridge |
Works with mobile/external wallets |
Extra connection step for users |
Relevant Packages
Resources
Summary
Add support for Farcaster Mini Apps in herocast, allowing users to discover, interact with, and launch mini apps directly within the client.
Background
Mini Apps are interactive applications built on Farcaster that provide rich, app-like experiences within the social feed. Supporting mini apps would bring herocast to parity with other Farcaster clients and give power users access to the growing mini app ecosystem.
Proposed Features
Technical Requirements
Core Host Responsibilities
postMessagechannel for iframe communicationsdk.actions.ready()/.well-known/farcaster.jsonfrom each app's domainWallet Provider Integration
Mini apps access wallets via the SDK:
Approach Options:
Relevant Packages
@farcaster/miniapp-host@farcaster/miniapp-sdk@farcaster/miniapp-nodeResources