My first cast on a local node
· Farcaster mainnet
0x4b4eb31bb28cf0d6d0583c7fc022a60f0af50ec2
- 20:53:29Gasless
KEY_ADDaccepted - 20:53:47Cast confirmed by the node, 18 s later
Open source · MIT · No API keys
RunFarcaster sets up a Farcaster node and app of your own, with no gatekeepers in between.
A node set up by these scripts synced on mainnet and posted a cast on 18 Oct 2026.
Set up with AI
Paste this prompt into Claude Code, Codex or Cursor. It walks you through the 3 steps one at a time, and shows you each command and what it costs before it runs anything.
Set up RunFarcaster for me: fetch https://sudharshanx.github.io/runfarcaster/agent.md and walk me through the steps. Show me each command and what it costs before you run it.
01
Checks the price, then rents a Hetzner server with a 1000 GB disk. ./provision.sh
Example report
Picked cax31, $0.164 an hour with the volume. The server is up at <your-ip>.
02
Starts a Snapchain read node and waits until it holds every message. node.sh
Example report
Node is in sync after 14 h 06 m: 914,243,963 messages, every shard less than 10 s behind.
03
Puts the web app online on the same server, over HTTPS. ./deploy-client.sh
Example report
App is up at https://<ip-with-dashes>.sslip.io. The status says Connected to your node.
Keep your recovery phrase and your Hetzner token out of the chat. See the steps the prompt follows: agent.md. Exact commands, to run by hand: Full run. Prompts for when you're stuck: Debug and question prompts.
Your node keeps every Farcaster message. Your app reads your feed from it, with no API key.
The app adds a gasless app key, then sends your casts, likes and follows through your node.
Bots, apps and analytics jobs call the same HTTP API as the app. Build on your node
How it works
loads the app
you write a cast
asks for the feed
cast signed with your app key
copies every new block
checks it, passes it on
Proof of work
My first cast on a local node
· Farcaster mainnet
0x4b4eb31bb28cf0d6d0583c7fc022a60f0af50ec2
KEY_ADD acceptedI typed the recovery phrase into the app on localhost. It never left the browser: only the signed key and the cast went to our node.
We synced the node in 14 h 06 m. It then held 914,243,963 messages.
Logs, screenshots and every number
Cost
Hetzner prices in USD, October 2026.
| Item | Per hour | Per month |
|---|---|---|
| Server: cax31 (8 vCPU ARM, 16 GB RAM) | $0.040 | $24.99 |
| Public IPv4 address | $0.001 | $0.60 |
| 1000 GB volume for the node's data | $0.123 | $76.70 |
| Total | $0.164 | $102.29 |
| Item | Per hour | Per month |
|---|---|---|
| Server: cpx42 (8 vCPU x86, 16 GB RAM) | $0.131 | $81.99 |
| Public IPv4 address | $0.001 | $0.60 |
| 1000 GB volume for the node's data | $0.123 | $76.70 |
| Total | $0.255 | $159.29 |