Files
FTStore/CLAUDE.md
T
Felitendo 3811e1e9be docs: make ftstore a hard fork of feather
the code is ours now. ios/ is no longer framed as a tracking branch:
there is no routine merge, no expectation that our tree resembles
upstream's, and no reason to shape a change around a future merge.

upstream stays pinned. .upstream-sync.json keeps recording the last
commit folded in, so an on-request sync has somewhere to diff from —
it gains mode: "hard-fork" to say what it is and is not. syncs happen
when asked, and cherry-picking the wanted commits is now the default
advice over a wholesale merge, since the trees have diverged by design.

sync-upstream.sh no longer reports being "behind upstream" as though it
were a defect, and apply-rebrand.sh is documented as what it now is: a
no-op on a normal day, load-bearing right after a sync.

the FEATHER_* xcconfig variables stay upstream-equal. renaming them is a
defensible hard-fork cleanup, but they are referenced from both pbxproj
files and both dev-repo workflows, and nothing here can verify a build —
noted as an ask-first change instead.

this changes the workflow, not the licence. every gpl-3.0 attribution to
feather stays: the credits in AboutView, the app-repo news entry, the
readme acknowledgements, the copyright headers.
2026-08-03 13:25:09 +02:00

1.1 KiB

FTStore — project guide for Claude

See AGENTS.md for the full project guide — it is the single, canonical source of truth for working in this repo: the monorepo layout, brand constants, the commit workflow, upstream tracking, the scripted rebrand, GPL-3.0 obligations, and validation steps all live there. Read it before making changes.

Shortest possible orientation: ios/ is the Swift app — a hard fork of Feather, meaning it is our codebase and is not merged from upstream on any routine (upstream stays pinned in .upstream-sync.json and is synced only when the user asks). web/ is FTStore Admin (the Next.js dashboard at /admin plus the feed server, ours alone), manager/ is FTStore Manager (a fork of ios/, not of Feather, that installs and updates the app on-device). scripts/apply-rebrand.sh acts on ios/ only and must never touch web/ or manager/.

Both CLAUDE.md and AGENTS.md are excluded from scripts/apply-rebrand.sh, so they intentionally mention both "Feather" (upstream) and "FTStore" without being mangled.