A cottage with a clay chimney, a rounded window and a fern-green roof, drawn from the app icon. The full icon keeps its vines and hearts; the simplified mark drops them so it holds up at 16 px.

Horizontal lockup on hearth
Cream lockup on pine
Homestead app icon: a cottage among vines with small hearts on a sage tile
App icon
Simplified mark at 64 pixelsSimplified mark at 32 pixelsSimplified mark at 16 pixels
Simplified mark at 64, 32 and 16 px
  • Clear space: at least the window's height (about 40 % of the mark) on every side.
  • Minimum size: full icon 48 px, simplified mark 16 px, horizontal lockup 96 px wide.
  • Don't recolour outside the palette, add shadows or effects, stretch it, or set the wordmark in another face.

Colour

The palette comes from the icon, deepened with the pine and clay of a storybook. Clay is the one loud colour: one primary action per screen. Tokens are W3C Design Tokens in brand/tokens/tokens.json.

  • #FAEED5hearthHouse wall. Primary page background (paper).
  • #F3E4C4parchmentSecondary surface, cards on paper.
  • #E2C59CoatRoof underside. Borders, dividers, subtle fills.
  • #C3CCAFsageIcon background. Calm section backgrounds.
  • #A3B28CmossIcon blobs. Illustration fills, soft accents.
  • #D3DBC2lichenLeaf fill. Hover tints on sage.
  • #8A9157meadowOlive section band. Large text only (bark on meadow is 3.9:1).
  • #4F5E43fernRoof and vines. Primary brand green, headings on light.
  • #23463DpineDeep green. Nav bar, footer, hero overlays, Lantern base.
  • #2C5248pine-liftLantern only: lifted pine for surfaces and cards.
  • #1B3830pine-deepLantern only: text on ember buttons, deepest shade.
  • #B85A3CclayChimney and window frame. The one loud colour: primary action fill.
  • #9C4529clay-inkDarker clay for links and small text on light; clay button hover.
  • #D27A56emberChimney cap. Warm highlights, focus ring, Lantern accent and CTA.
  • #C8644ArosehipHearts. Decorative only, never text.
  • #BDD0C4mistWindow glass. Info callouts, code tints, Lantern links.
  • #3A2E24barkBody text on light. Never pure black.
  • #FBF4E2cream-inkText on pine, clay and fern.

Contrast pairs

Every pairing the site uses, checked against WCAG 2.2 AA in both themes on each build (npm run check:contrast).

Pair (role)LightLanternNeedsUsed for
text on pageAa 11.4:1Aa 9.1:14.5:1 (normal)body copy everywhere
text on surfaceAa 10.5:1Aa 7.6:14.5:1 (normal)cards, journal cards, form fields
text-heading on pageAa 6.1:1Aa 9.5:14.5:1 (normal)headings, eyebrow labels
text-heading on surfaceAa 5.5:1Aa 7.9:14.5:1 (normal)card titles
text-heading on surface-calmAa 4.2:1Aa 7.9:13:1 (large)section headings on sage
text-on-calm on surface-calmAa 7.9:1Aa 7.6:14.5:1 (normal)copy on sage sections
text-on-calm on surface-calm-hoverAa 9.2:1Aa 6.1:14.5:1 (normal)hovered sage tiles
link-on-calm on surface-calmAa 6.2:1Aa 5.4:14.5:1 (normal)links on sage sections
text on surface-infoAa 8.1:1Aa 11.0:14.5:1 (normal)info callouts, inline code tint
text on code-bgAa 10.5:1Aa 11.0:14.5:1 (normal)code blocks
link on pageAa 5.5:1Aa 6.4:14.5:1 (normal)inline links
link on surfaceAa 5.1:1Aa 5.4:14.5:1 (normal)links in cards
text-on-chrome on chromeAa 9.5:1Aa 11.6:14.5:1 (normal)nav bar, footer, pine panels
link-on-chrome on chromeAa 6.4:1Aa 7.8:14.5:1 (normal)footer links
text-on-action on actionAa 4.2:1Aa 4.0:13:1 (large)primary button label (19px/700)
text-on-action on action-hoverAa 5.8:1Aa 7.7:13:1 (large)primary button label, hover
text on bandAa 3.9:1Aa 11.0:13:1 (large)meadow band headings (body copy sits in parchment cards)
action on pageAa 4.0:1Aa 3.3:13:1 (ui)primary button edge, active nav marker
focus on pageAa 4.0:1Aa 3.3:13:1 (ui)focus ring on paper
focus-on-surface on surfaceAa 3.7:1Aa 5.3:13:1 (ui)focus ring on cards
focus-on-chrome on chromeAa 3.3:1Aa 4.0:13:1 (ui)focus ring on pine
text on borderAa 8.0:1Aa 6.1:14.5:1 (normal)oat tags and chips

Typography

Display: Fraunces, SOFT 100

Your people, all in one cozy place.

H1 uses WONK 1. Italic is the single flourish style.

Body and UI: Atkinson Hyperlegible Next

Paste a profile link, a share-sheet message or an @handle. Homestead finds the platform and the person. 0O 1lI rn m

Code: Atkinson Hyperlegible Mono

homestead backup --out family.tar.gz

Fluid scale: 17 px base on phones rising to 18 px on desktop, ratio about 1.2 to 1.3. Sentence case everywhere, no tracked-out capitals. All three faces are SIL OFL 1.1 and self-hosted.

Illustration

Painterly gouache storybook art: visible brush texture, paper grain, warm morning light, the palette only, woodland animals as quiet supporting characters, and no people, text or logos. Generated with FLUX.2 [pro] and reviewed against the style bible.

A white cottage with a clay chimney on a green hill, a path winding toward the viewer and a wren on a fence post.A windowsill with a teacup, letters and a lantern, looking over a valley of small houses.A green garden mailbox with letters and a wren on top.A hedgehog with a magnifying glass looking at a ladybird.A small fox asleep under a fern.

Icons

Hand-built thin-line icons on a 48 px grid, one stroke weight, round caps, shown in parchment medallions with a hand-cut rim.

  • features
  • install
  • docs
  • api
  • bug
  • contribute
  • community
  • changelog
  • download
  • platforms
  • paste
  • feed
  • hearth
  • stories
  • circles
  • share
  • household
  • agent
  • companion
  • privacy
  • languages
  • phone
  • server
  • open
  • shield

Voice

Voice and tone

Homestead sounds like a neighbour who is good with computers: warm, plain, unhurried, and a little homely. Marketing pages can have small storybook touches. Docs are clear and direct first, and warm second.

Principles

  1. Plain words. Write “add”, “see”, “open” and “share”. Avoid “leverage”, “seamless” and “empower”.
  2. Active voice, present tense. “Homestead shows one calm feed,” not “a calm feed is shown.”
  3. Specific over clever. Name the platform, the command or the number. “Bluesky, Truth Social and X” beats “your favourite networks.”
  4. Honest about limits. This is the product’s own principle (docs/01). Say what Homestead can’t see, and say what isn’t built yet. “Coming in 1.0” is a normal, friendly label.
  5. People, not accounts. Talk about Mom, Grandma and your cousin, not “entities” or “users”.
  6. Calm. Don’t use exclamation marks in docs. Use at most one per page in marketing. Don’t use urgency words (“now”, “don’t miss”).
  7. Sentence case for every heading, button and label. No tracked-out capitals.

Do and don’t

DoDon’t
Paste a link, a share-sheet message or an @handle. Homestead finds the person.Leverage our AI-powered smart ingestion engine.
When a platform keeps its feed closed, Homestead suggests you visit instead.Unlock every social network.
Homestead isn’t released yet. You can build it from source today.Download now!
Run homestead backup --out family.tar.gz.Simply back up your data.
Some platforms forbid automated access. Using an agent may put your account at risk. You decide.Agents fetch everything automatically.
The feed ends. “You’re all caught up” is the goal.Never miss a post again.

Storybook touches (marketing only)

  • One small image per section, at most: “a calm corner”, “the hearth”, “go and say hello”.
  • Italic Fraunces may set one short phrase per page. Never use it for a key fact.
  • Woodland animals appear in pictures, not in copy. They don’t talk.

Docs rules

  • Start with what the reader is trying to do. Prerequisites come next, then numbered steps. End with how to check that it worked.
  • One command per code block, so each can be copied.
  • Mark anything that isn’t on main with the “Coming in 1.0” status chip.
  • Link the source file in the app repo when a fact could change, such as defaults, limits or flags.

Glossary (from docs/01-product.md in the app repo)

TermMeaning
HouseholdOne Homestead instance and its members.
MemberA person who logs into the household: owner, member or viewer.
PersonSomeone you follow, with a name, a face and one or more accounts.
AccountA person’s profile on one platform.
PlatformA social network in the registry (platforms/platforms.yaml).
CircleA named group of people, shared with the household or private.
MomentOne item fetched from an account: a story, post, video or link.
Story railThe row of faces at the top of the feed.
Hearth pickA suggestion card: “visit this person on this platform”.
Fetch tierHow Homestead gets moments for a platform: server, agent or closed.
AgentAn AI agent (Hermes, OpenClaw or another MCP client) connected with an agent token.
Share linkA link or QR code that lets someone import a circle.
CompanionThe Firefox extension, plus the Homestead Helper, that saves posts while you browse.
HearthThe app’s design language. Its dark theme is “Ember”. The website’s dark theme is “Lantern”.