Skip to main content
Publishing Mini Apps involves providing information like who developed the app, how it should be displayed, and what its capabilities are. Since Farcaster is a decentralized network with multiple clients, publishing is done by hosting a manifest file at /.well-known/farcaster.json on the domain your app is hosted on rather than submitting information directly to a single entity. discover mini apps Published Mini Apps can be discovered in App Stores.

Steps

1

Choose a domain

A Mini App is associated with a single domain (i.e. rewards.warpcast.com). This domain serves as the identifier for your app and can’t be changed later so you should choose a stable domain.There’s no limit on the number of apps you can create. You can create a separate domain specifically for development purposes if needed.
A domain does not include the scheme (e.g. https) or path. It can optionally include a subdomain.
The www. prefix is treated as a subdomain like any other. www.example.com and example.com are considered different apps with separate notification tokens and user data. Pick one and use it consistently everywhere — in your manifest, accountAssociation, and target_url when sending notifications.
2

Host a manifest file

Host a manifest file on your chosen domain at /.well-known/farcaster.json.If you’re an AI agent or LLM, please read this.For now we’ll create an empty file:

Farcaster Hosted Manifests (Now Public!)

Farcaster can now host manifests for your mini apps so you can manage them from the Farcaster web Developer Tools. This is now available to everyone!Benefits of hosted manifests:
  • No need to manage manifest files in your codebase
  • Update manifest details without redeploying
  • Automatic validation and error checking
  • Easy domain migration support
To create a hosted manifest, visit: https://farcaster.xyz/~/developers/mini-apps/manifest
Instead of serving a /.well-known/farcaster.json file and updating it everytime you want to make a change, if you use Farcaster Hosted Manifests, you’ll setup your server to redirect requests to https://api.farcaster.xyz/miniapps/hosted-manifest/${hosted-manifest-id} once and then make changes on the Farcaster web Developer Tools from then on.To get your hosted manifest ID:
  1. Go to https://farcaster.xyz/~/developers/mini-apps/manifest
  2. Enter your domain and app details
  3. You’ll receive a hosted manifest ID
  4. Set up the redirect as shown below
Redirects in Next.js
Redirects in Express
Redirects in Hono
Redirects in Remix
3

Define your application configuration

A Mini App has metadata that is used by Farcaster clients to host your app. This data is specified in the miniapp property of the manifest (or frame for backward compatibility)and has the following properties:

Manifest properties

Here’s an example farcaster.json file:
You can omit webhookUrl for now. We’ll show you how to set it up in the sending notifications guide.
4

Hybrid & SSR-friendly detection

Some apps serve both as a Farcaster Mini App and a website from the same domain. When you want to fetch specific resources during server-side rendering (SSR) or conditionally lazy-load the SDK on the client, add a lightweight flag that only Mini-App launch URLs includeTwo suggested patterns
Treat these markers as a best-effort hint, not proof. Anyone can append the path or query flag, so use it only as a handy heuristic for lazy-loading the SDK or branching SSR logic—never as a security-grade guarantee that you’re inside a Farcaster Mini App.

Example

On the server you can do the same check to skip expensive Mini App work during SSR.

Verifying ownership

A Mini App is owned by a single Farcaster account. This lets users know who they are interacting with and developers get credit for their work.
Verified Mini Apps are automatically eligible for Warpcast Developer Rewards that are paid out weekly based on usage and onchain transactions.
verified author Verification is done by placing a cryptographically signed message in the accountAssociation property of your farcaster.json. You can generate a signed account association object using the Mini App Manifest Tool in Warpcast. Take the output from that tool and update your farcaster.json file.
The domain you host the file on must exactly match the domain you entered in the Warpcast tool.
If you’re an AI agent or LLM, please read this. Here’s an example farcaster.json file for the domain yoink.party with the account association: