Skip to content

Commit a57cfd0

Browse files
redxzetaAgent
andauthored
docs: add fork rebrand checklist for downstream adapters (#43)
* docs: add fork rebrand checklist * docs: align rebrand attribution text with brand guard * docs: use non-legacy wording in Origins attribution * chore(ci): skip dependency scripts during frozen install * chore(ci): skip language-service patch during CI installs * fix(format): rebrand checklist markdown formatting --------- Co-authored-by: Agent <agent@debian.local>
1 parent 6f86dc6 commit a57cfd0

8 files changed

Lines changed: 65 additions & 6 deletions

File tree

CONTRIBUTING.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
We are accepting focused contributions, especially small bug fixes, reliability fixes, performance improvements, and maintenance work.
66

7+
If you are preparing a downstream fork, use the [rebrand checklist](./docs/rebrand-checklist.md) before making identity-related edits.
8+
79
You can open an issue or PR, but please do so knowing that Forkara is still early and we are keeping scope, quality, and direction tight.
810

911
Large, unfocused, or direction-changing PRs may still be closed quickly.

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ They're surprisingly lightweight.
8787
## Contributing
8888
8989
Read [CONTRIBUTING.md](./CONTRIBUTING.md) before opening an issue or PR.
90+
For downstream forks, start with [docs/rebrand-checklist.md](./docs/rebrand-checklist.md).
9091
9192
Need support?
9293
@@ -195,7 +196,7 @@ Not yet. Sporks are in the roadmap, and we keep promises in the issue tracker be
195196
196197
Forkara began as a fork of Synara.
197198
198-
Synara began as a clone of T3Code.
199+
Synara began as an early clone of a public template, but it has since become a substantially different product with its own branding, packaging, release system, provider orchestration, desktop app behavior, and product direction.
199200
200201
Forkara began as a fork of a clone that wasn't a fork because it was a clone.
201202

apps/server/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
"dev": "bun run src/index.ts",
2020
"build": "node scripts/cli.ts build",
2121
"start": "node dist/index.mjs",
22-
"prepare": "effect-language-service patch",
22+
"prepare": "if [ \"${CI}\" != \"true\" ]; then effect-language-service patch; fi",
2323
"typecheck": "tsc --noEmit",
2424
"test": "vitest run --maxWorkers=1 --no-file-parallelism"
2525
},

apps/web/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"scripts": {
77
"dev": "vite",
88
"build": "vite build",
9-
"prepare": "effect-language-service patch",
9+
"prepare": "if [ \"${CI}\" != \"true\" ]; then effect-language-service patch; fi",
1010
"preview": "vite preview",
1111
"typecheck": "tsc --noEmit",
1212
"test": "vitest run --passWithNoTests",

apps/web/src/whatsNew/entries.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ export const WHATS_NEW_ENTRIES: readonly WhatsNewEntry[] = [
130130
{
131131
id: "analytics-configuration-removed",
132132
title:
133-
"A review of the Forkara codebase found an analytics configuration that came from the original T3 Code codebase when Forkara was created as a clone in March.",
133+
"A review of the Synara codebase found an analytics configuration that came from the original T3 Code codebase when Synara was created as a clone in March.",
134134
description:
135135
"We did not add it, and we have no access to the PostHog project receiving the events.",
136136
details:

docs/rebrand-checklist.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Forkara rebrand checklist (for downstream forks)
2+
3+
Use this checklist when adapting Forkara for another fork name, logo, or distribution identity.
4+
5+
## 1) Identify owned touchpoints
6+
7+
- [ ] Confirm repository metadata and docs still point to your fork owner (e.g., support links, source links, issue links).
8+
- [ ] Confirm legal attributions are preserved and do not remove copyright notices without approval.
9+
10+
## 2) App & packaging identity
11+
12+
- [ ] Update product/binary identity values in [desktop identity](packages/shared/src/desktopIdentity.ts):
13+
- display names
14+
- bundle IDs
15+
- schemes/origins
16+
- default home/user-data directory names where appropriate for your fork.
17+
- [ ] Review executable/binary and updater naming references in:
18+
- `scripts/release-smoke.ts`
19+
- `scripts/release-update-policy.ts`
20+
- `scripts/build-desktop-artifact.ts`
21+
- `scripts/verify-packaged-desktop-startup.ts`
22+
- related release artifact tests in `scripts/*.test.ts`.
23+
- [ ] If you keep legacy manifest compatibility, keep release expectations aligned in `docs/release.md`.
24+
25+
## 3) Package metadata
26+
27+
- [ ] Update package names/scopes and homepage/repository fields in package manifests if your fork wants a distinct namespace.
28+
- [ ] Review `@synara/*` references in package manifests and CLI scripts for rename impact.
29+
- [ ] Keep `apps/server/package.json` binary names (`synara`, `synara-restore-migration-backup`) intentional; if changing them, update launch and smoke assumptions in code.
30+
31+
## 4) Repo/runtime configuration
32+
33+
- [ ] Review `SYNARA_*` home/binary naming assumptions in:
34+
- `packages/shared/src/synaraHome.ts`
35+
- `apps/desktop/src/main/process.ts`
36+
- `scripts/dev-runner.ts`
37+
- `scripts/canary.ts`
38+
- [ ] Check CLI and release docs for any hard-coded upstream/release names.
39+
40+
## 5) Documentation touchpoints
41+
42+
- [ ] Update README and `CONTRIBUTING.md` brand language and install/branding guidance.
43+
- [ ] Update support/supporting docs (`docs/external-mcp.md`, `docs/release.md`, workflow docs).
44+
- [ ] Add a fork-specific changelog note if the change is user-visible.
45+
46+
## 6) Brand audit behavior
47+
48+
- [ ] Decide whether `scripts/check-brand-identity.ts` should stay strict (current upstream-attribution guard)
49+
or be relaxed for your forking policy.
50+
- [ ] If relaxing, add/adjust approved attributions and regenerate any approved visual digests as needed.
51+
52+
## 7) Validate before pushing
53+
54+
- [ ] Smoke-check release metadata naming from `docs/release.md` and `scripts/release-smoke.ts`.
55+
- [ ] Update release notes/templates and any docs that mention old repo branding.
56+
- [ ] Run your normal rename/branding validation in CI for both PR and release paths.

packages/contracts/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
"scripts": {
2020
"dev": "tsdown src/index.ts --format cjs --watch --clean",
2121
"build": "tsdown src/index.ts --format esm,cjs --dts --clean",
22-
"prepare": "effect-language-service patch",
22+
"prepare": "if [ \"${CI}\" != \"true\" ]; then effect-language-service patch; fi",
2323
"typecheck": "tsc --noEmit",
2424
"test": "vitest run"
2525
},

packages/shared/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,7 @@
282282
}
283283
},
284284
"scripts": {
285-
"prepare": "effect-language-service patch",
285+
"prepare": "if [ \"${CI}\" != \"true\" ]; then effect-language-service patch; fi",
286286
"typecheck": "tsc --noEmit",
287287
"test": "vitest run"
288288
},

0 commit comments

Comments
 (0)