create-fcNetwork Decentralization Authority · Special Offer

Tired of reading Farcaster through someone else's servers?

Now! Your own
Farcaster

For less than a cup of coffee a day!*

ONLY$3.99*A DAY

It's this easy

  1. hetzner.sh rents the server
  2. setup.sh syncs the node
  3. install.sh puts a demo client on your computer
Cancel anytimeChange your mind? One command deletes everything, and the billing stops that very hour.

Trial coupon · act today!

Paste this in your own terminal. About $1.30 to sync it and try it.*

curl -fsSL https://raw.githubusercontent.com/eucalyptus-viminalis/create-fc/main/provision/hetzner.sh | bashOne per customer

YES! I want my own node. I'll pay by the hour and quit anytime.

*Hetzner bills about $0.16 an hour for the server and its 1 TB disk, until you delete them: about $4 a day. About $1.30 to sync and try. One command stops the billing. If the usual server is sold out, the fallback costs about $0.20 an hour. Full details in the docs.

Page 189
create-fc

Service OrderNetwork Decentralization Authority

Order No.0417
CustomerNode operator (you)
Date
TechnicianYour AI assistant
Make / modelClaude Code, Codex or similar
Service manualAGENTS.md
Work to be performed

Set up my own Farcaster read node and client with create-fc. Read https://raw.githubusercontent.com/eucalyptus-viminalis/create-fc/main/AGENTS.md and follow it step by step. Check with me before spending money or deleting anything. Never ask me for a seed phrase, private key or API token: when a step needs one, tell me the command to run in my own terminal.

Technician will not
  • Ask for, accept or handle a seed phrase, private key or API token
  • Spend money without asking you first
  • Delete anything without asking you first
  • Change your Hetzner account, SSH keys or shell setup beyond the manual
Customer will
Spending authorized≈ $0.16 / hr, until deleted. Ask first.
Est. time6–8 hrs (reads in ≈ 2)
Labor$0.00
Customer signature
Work completed☐ Node in sync
☐ Client installed
White · TechnicianYellow · CustomerPink · FileNDA Form 7 · Rev. 10/26
create-fcAssembly Manual · Model NDA-12

Before you beginPrepare the required tools

A little preparation now will make the rest of the afternoon go smoothly. Look over the lists on this page and get each item ready before you begin assembly. If something is missing, this is the time to install it or sign up for it, not halfway through the assembly.

Everything in the Git kit is software. It includes the scripts for renting a server, building a Snapchain node, and a demo client implementation to test with. Prepare the tools and accounts below, and the kit will take care of the rest. To know what each command does and why, read How it works in the docs.

Pictorial 1 · Tools you will need

Tools you will need (you're expected to have these already)

Optional (recommended)

Not included (you supply these)

Parts list (what's included in the Git kit; check each part exists and look it over)

KeyPartDescription
0hetzner.shRents the server
1setup.shBuilds the node, and installs fc-node, the gauge you read on the server
2install.shInstalls a demo client to test your node

Preparation

hcloud context create fc-node

CautionType tokens and seed phrases yourself, in your own terminal. Never paste them into a chat or an AI assistant: anyone who can read the transcript can use them.

*Hetzner bills by the hour, about $0.16 (cx43 with a 1000 GB volume), until you delete the server. If cx43 is sold out the kit uses cpx41, about $0.20 an hour.

NDA-1Before you begin
3Assembly Manual · Model NDA-1

Step-by-step assembly

The assembly is three commands. Steps 0 and 2 take a minute or two at your computer. In step 1 the node builds itself on the server for 6 to 8 hours, and you need only look in on it now and then. Read each step all the way through before you do it. When you've done it, mark it in the space provided: (✓). Your marks are saved on this computer, so you can come back to them.

YOUR COMPUTER fameboy ui HETZNER SERVER fc-node · Snapchain FARCASTER APP (optional) :3381 2 0 1
Pictorial 2 · What goes where (circled numbers are the steps)
0

The serverTime: 30 seconds

curl -fsSL https://raw.githubusercontent.com/eucalyptus-viminalis/create-fc/main/provision/hetzner.sh | bash
e.g. 203.0.113.7
1

The nodeTime: 6–8 hours, unattended

ssh -o StrictHostKeyChecking=accept-new root@<address> 'curl -fsSL https://raw.githubusercontent.com/eucalyptus-viminalis/create-fc/main/node/setup.sh | bash'
ssh root@<address> fc-node status

CautionDo not run the build command again while setup is running. If the gauge says setup has stopped, run it again and it will pick up where it left off.

Step-by-step assemblyContinued on page 4
Assembly Manual · Model NDA-14

Step-by-step assembly(continued from page 3)

2

The clientTime: 1 minute

You can do this step as soon as the node is catching up.

curl -fsSL https://raw.githubusercontent.com/eucalyptus-viminalis/create-fc/main/client/install.sh | bash -s -- http://<address>:3381
fameboy ui
ssh -t root@<address> fc-node app-account

To share your nodeOnce it has an app account, anyone can sign in through your node. To limit it to friends, run ssh root@<address> fc-node signin invite, then fc-node invite <name> for each friend. They type the code on the sign-in page. See Share your node, or Host fameboy for others to give them a web address instead.

Initial tests

fameboy feed -n 5

To remove from serviceWhen you are finished, delete the server to stop the billing. The command lists what it will delete and asks before it does. Your app key stays on your computer.

curl -fsSL https://raw.githubusercontent.com/eucalyptus-viminalis/create-fc/main/provision/hetzner-delete.sh | bash
0 of 0 marked

This completes the assembly. Proceed to the Membership Application.

Step-by-step assemblyNDA-1
network decentralization authority
operator's packet · document 3

how farcaster
works

eleven ideas behind
the node you just built
create-fc
first printing
01

fid

A Farcaster account is a number, its FID, registered on OP Mainnet (Optimism).

3355372 fid usernameapp keysstorage

Usernames, keys and storage all hang off it. The account we tested with is 3355372.

accountsp. 1
02

custody
address

Most wallets use the first address, m/44'/60'/0'/0/0. fameboy login checks that one first, then the next nine.

seed phrase m/44'/60'/0'/0/0 0x… owns fid can · transfer the accountcan · add or remove keys never · signs a cast

The Ethereum address that owns the FID, derived from the seed phrase. It can transfer the account and add or remove keys. It never needs to sign a cast.

accountsp. 2
03

app keys

Ed25519 keys that sign everyday messages for one app.

fid appappkey farcasterfireflyfameboy

The custody key authorizes each one, naming the app that asked (its requestFid). One account can have many: Farcaster's app, Firefly, this client.

keysp. 3
04

app account

There's no shared @fameboy, since every node would need its key. Each node names its own, like @fameboyteal.

you @fameboyteal asks for a key you approve gmvia @fameboyteal

The account that asks for an app key. Its name is what you approve on your phone, and what your casts show "via".

keysp. 4
05

gasless
app keys

App keys used to need an Optimism transaction. Now a KEY_ADD message does it: no transaction, no gas, about a second.

before · optimism transaction · gas now · KEY_ADD message · no gas ≈ 1 s expires after 30–90 days unused

Each key lists the message types it may sign, its scopes.

keysp. 5
06

messages

Timestamps count seconds from 1 January 2021, not 1970. A message's ID is a 20-byte BLAKE3 hash, the 0x085bf8a4… you see in fameboy.

cast reaction follow profile signed protobuf 1970 2021 time starts here → message id · 20 bytes

Casts, reactions, follows and profile fields are all signed protobuf messages.

snapchainp. 6
07

shards

Snapchain splits users across shards 1 and 2 by a hash of the FID.

0 1 2 orders hash(fid)

Shard 0 orders the other two and holds what every shard needs, like app keys. Each shard is its own chain, so their heights differ.

snapchainp. 7
08

read nodes
& validators

A read node, like yours, fetches the decided blocks, checks their signatures, and serves the API. Anyone can run one.

validators a fixed set decided blocks yournode api

Validators propose and vote on blocks; there's a fixed set of them.

snapchainp. 8
09

mempool &
submission

Your read node accepts writes: it checks the message, gossips it to the validators, and keeps nothing.

yournode gossip validators fameboy reads it back

"Accepted" means valid and relayed, not "in a block". That's why fameboy reads every write back. If gossip drops it, send it again.

writingp. 9
10

storage rent

One unit comes with registration (about $0.20 when we checked). fameboy login checks there's at least one.

oldest · pruned new cast 1 unit

To post, an account needs rented storage units, paid on Optimism. When a store fills up, the oldest messages are pruned.

accountsp. 10
11

fnames

Usernames like @dwr come from the fname server, which signs a proof that the network stores.

@dwr fnameserver proof network

ENS names work too, so yourname.eth can be your username.

accountsp. 11

keep this with
your node

This booklet is part of the operator's packet. For the steps, see the assembly manual. For anything that breaks, see the service pages.

network decentralization authority
create-fc · printed in the open

What it costs

About $1.30 to sync and try, about $4 a day, $105 a month. Billed by the hour until you delete it. Full breakdown

NDA Node Operator's Service ManualSection 7
Trouble-Shooting Chart · Fold-Out 7-2
No.SymptomProbable CauseRemedy

If Trouble Persists

File a report with the step and the exact output at github.com/eucalyptus-viminalis/create-fc, or message @3070.eth for a 30-minute session on your own machine.

CAUTIONNever give a seed phrase, recovery phrase or API token to a person, a chat, or an AI assistant. Anyone who can read it can use it.
Fold along line · Printed in U.S.A.7-2NDA 26-1171 · 10/26
NDA Node Operator's Service ManualSection 7

Trouble-Shooting

Model NDA-1 Node · Fameboy Receiver
YOUR COMPUTERhcloud · sshCmds 0 & 2 SERVER fc-nodeSnapchain :3381Cmd 1 CLIENT fameboybrowser · terminalreads & writes SSHREADWRITE 123 hcloud context active fc-node status fameboy ui
Figure 7-1. Block Diagram With Test Points

How to Use This Chart

Find what you see in the index above and note its fault number, then unfold Chart 7-2 and read across: symptom, probable cause, remedy. Begin at the test point nearest the trouble.

  1. TP1 Your computerhcloud context active
  2. TP2 The serverssh root@<ip> fc-node status
  3. TP3 The clientfameboy ui
Printed in U.S.A.7-1NDA 26-1171 · 10/26

Seed phrase handling: a qualification card

Qualification card, front. The Network Decentralization Authority. This is to certify that (a blank line for your name) is duly qualified in Seed Phrase Handling, having read and understood the four rules overleaf. Date, and signed by the Administrator, Key Safety and Accident Prevention.
Qualification card, back: the four rules, listed below.

The four rules

  1. Never share it. Whoever holds the phrase holds every account made from it. Give it to another only if you mean to give them those accounts.
  2. Keep it on paper. Write it down and store it somewhere safe. Never photograph it, nor keep it in e-mail, notes or the cloud.
  3. Know that no one will ask. No genuine service, support desk or assistant needs your phrase. Whoever asks for it is after the accounts.
  4. Type it only where you trust. Into software you trust, on your own machine; better still, approve with your wallet and type it not at all.

Should the phrase ever be exposed, move what its accounts hold at once, and use it no more.

Download

Signing in to fameboy? Approve on your phone instead, and read what it does with a phrase if you type one.

It's playtime, not scrolltime.

the forecastbrisk, with a chance of casts
press startyour node, awake
new facesmostly human

1Catch up

Scrolling eats your day. fameboy values your time: it shows what's happening on the network at a glance 👀, so you can catch up quickly and get on with your day.

2Network

Every follow counts, and nobody wants to see slop. fameboy scores new followers on their onchain and offchain profiles, so you can confidently decide who's even worth following back 💅.*

3Play

Being social online should be fun. We like games 🎮, so fameboy plays like one, with special prizes for the most worthy participants.

Is this a weather app? Haha, who knows! But it feels great to check in every morning :)

— @fameboyenthusiast123

*Follower scores are coming to fameboy; screen shown is a preview. @fameboyclear is the copy the create-fc project hosts on its own Snapchain node: no API keys, no one else's servers. Run your own copy, in your own colour, with the create-fc Git kit, and host it for your friends. Sound effects can be switched off with M.

network conditionssnapchain

brisk 412 messages a minute, usually 280.
fameboy
connecting to this node

new followers4

@fameboytealshrimpfollow
@moxiedolphinfollow
@gm-bot-4471no fundsclear
@dwrwhalefollow

Try the demo!

Just want to try it? Open the demo client now, @fameboyclear, and sign in via your Farcaster mobile app.

demo.createfc.org

Application for Membership

Certified Node Operators only

Congratulations, Operator. Your node is in sync and your first message went out through it. That makes you a certified full-stack Farcaster node operator. To enroll with the Network Decentralization Authority alongside your fellow operators, complete this form.

Type or print. Items marked * are required.

Part I · Operator
Enter your FID (numbers only) or an e-mail address.
Your FID is the number on your Farcaster profile. Either one will reach you.
2a. Anonymity
Part II · Certification
3. I certify that *
Both, please. That's what makes an operator.
Part III · Correspondence
4. Bulletins (optional)
Part IV · Server reimbursement First five operators

Why the Authority pays. This kit is entered in Balaji's Farcaster client prize, and it only counts if other people run it. The first five operators to certify get $5 USDC to cover the server, whatever they thought of it. Paid once the Authority sees your node in sync.

5. Claim (optional)
Your node's IP, like 203.0.113.7.
So the Authority can see it in sync.
0x and 40 letters or numbers.
Any EVM address you control.
8. Signature of operator
anon
9. Date
For Authority use only · Do not write in this space

Privacy statement. The Authority asks for item 1 to reach you, and for nothing else on this form to be required. It is not sold or shared. An FID is public on Farcaster already; an e-mail address is kept only while you want bulletins. Items 6 and 7 are used only to check your node and pay you, and are never shown anywhere.

Burden statement. Public reporting burden for this collection is estimated to average 1 minute per response, considerably less than the 6 to 8 hours you just spent syncing a node.

Network Decentralization
Authority · Member
Operator
Member no.
Enrolled
Bearer is a certified node operator
Your member card Issued upon approval of this form. Detach and carry it, or share a picture of it with the operators you invite.
Cast your card