Skip to content

Ship & operateEngineering handbook

Brand & domains

5 min readUpdated Verified against f25ab97 on 2026-09-25

Page actions

ChatGPT and Claude are third-party services. The link gives them this page's public address and a short instruction. This site records nothing.

Product identity: company, app and website names, the gurbanisoul.com domain, visual identity rules and the identifiers that never change.

Product identity. Read before touching names, URLs, or visual identity.

Endorsed-brand architecture, set 2026-09-17 ahead of the first public TestFlight/App Store release:

  • Company: Algorythmos Pty Ltd — the Australian legal entity that owns the IP, the Apple/Google developer accounts, and the infrastructure. Credited as an endorsed brand (“Built by Algorythmos”). Its strongest trademark asset is the coined word “Algorythmos” itself.
  • Consumer app (iOS): Gurbani Soul — the product users download. This is the App Store Name, the iOS on-device label (CFBundleDisplayName/CFBundleName = Gurbani Soul), the widget-group name, and the About-screen title. Positioning leads with trust (“verbatim, cited by Ang, never AI-invented”), not “AI”.
  • Website / Knowledge Base (this repo): stays “Sri Guru Granth Sahib Ji — Knowledge Base” — a distinct, scholarly property from the consumer app. Its page titles/header use the full scripture name. Do not rename the KB site to “Gurbani Soul”.
  • Scripture citations, everywhere (web + app): always the full “Sri Guru Granth Sahib Ji · Ang N”. “Gurbani Soul” names the app, never the text. Keep this separation.
  • Product domain: gurbanisoul.com — registered 2026-09-17 at Hostinger (registrar), 2-year term, auto-renew on, WHOIS privacy on. DNS is delegated to Cloudflare (account label “Company-Domains”), nameservers jamie.ns.cloudflare.com / luke.ns.cloudflare.com. The Cloudflare Zone ID / Account ID live in the Cloudflare dashboard, not in this repo — never paste them (or any API token) into tracked files.
    • LIVE as of 1.3.3. The site is one Astro build served on the apex: / is the Gurbani Soul landing (marketing), and the Knowledge Base keeps its own name/theme under /search, /reader, … Support/Privacy are paths on the apex (/support, /privacy), so one domain satisfies Apple’s URL fields. docs.gurbanisoul.com serves this wiki (live since 1.3.10); there is no api. subdomain — the API is same-origin under /api. Full topology + DNS + email routing: docs/website/README.md.
    • Canonical rule: the bare apex gurbanisoul.com is canonical (200, no redirect); www and the legacy Vercel alias 308→apex. <link rel="canonical">, og:url and the sitemap all use the bare apex. Public contact is support@gurbanisoul.com (a Zoho Mail alias → owner; DNS in docs/website/README.md). Never re-introduce the legacy Vercel production alias as a URL in app code, listing, monitors or docs (the DocsHygiene + test_app_links_use_the_canonical_host gates enforce this; the literal host is named only in docs/process/environments.md and docs/website/README.md, which record the domain topology).
    • .app / .ai are optional defensive buys for later, not on the launch path.
  • Availability caveats that were verified (Sep 2026, non-authoritative — re-check before spend): no App Store/Play app named “Gurbani Soul” and no matching company/trademark found. Trademark note: “Gurbani AI” would be descriptive→generic and weak; India has a religious-susceptibilities bar (TM Act s.9(2)(b)) on Sikh/scriptural terms plus active Akal Takht scrutiny of AI-Gurbani tools — file logos/composites, prioritise protecting “Algorythmos”, and get professional clearance in AU/US/India before filing.
  • Visual identity (iOS app) — governed by docs/brand/gurbani-soul-brand-book.md (set 2026-09-18). docs/brand/tokens.json is the palette source of truth; python3 scripts/brand/contrast_report.py must exit 0 after any colour change. Default accent is Soul Gold (AccentPalette.brandDefault). The literal brand gold #FFBC0D is accentFill only (prominent fills, always with an accent border) — it is 1.69:1 on white, so never use it for text, icons, tint or links; use accent / accentText. Brand red #DA291C is fill-only (badges), never text and never beside Gurmukhi; on the website its only use is the Contribute heart’s fill (--contribute-heart, owner exception 2026-10-18). Headings use Source Serif 4 via Brand.heading (navigation titles + hero lines only); Gurmukhi is always ink-coloured Sant Lipi. Dark mode is warm ink everywhere — new List screens use inkGroupedList()/inkPlainList()/inkRow(). Never make a gold mark on a red square (another company’s trade dress). Brand gates G3 (sensitivity: a Granthi or scholar) and G4 (legal) were closed on 2026-09-26 for the first App Store submission (brand book §12). The marketing pages follow these tokens; the Knowledge Base has its own theme set (next point).
  • Visual identity (Knowledge Base) — thirteen colour themes, generated from docs/brand/web-themes.json by scripts/brand/gen_web_themes.py into frontend/src/styles/kb/themes.css (never edit that file by hand). The five app accents are copied exactly from the iOS palettes; the Italia and South of France themes are web-only and marked review until the scholar review (they ship in 1.4.0 so labelled: the owner waived that review, and the five-person task check, for the release on 2026-10-13; both run after it). Default is Soul Gold on warm paper. The generator solves each theme’s tint strength and fails on any text pair under 4.5:1 (3:1 for the accent as a control edge), in light and dark; python3 scripts/brand/gen_web_themes.py --check runs in the required python check. It proves every text colour on every surface, the neutral inks on a chip (--chip) over each surface, and the cloth’s text and the accent edge on the motif; --accent-ui is the accent itself, deepened only where a tint needs it (Saffron and Gold by day). Not proved, so never styled: accent text on a chip (use --accent-wash) and the negative red on a chip over the cloth. The pages are measured too: frontend/e2e/kb-contrast.spec.ts checks every visible text node on every state in all thirteen themes. A theme is chosen in the display sheet (“Aa” in the top bar). Rules that hold in every theme: Gurmukhi is ink (the reverence walker, frontend/e2e/reverence.spec.ts); --accent is the accent’s text colour, a filled control uses --accent-fill with --on-accent text; a companion colour (--co) is decorative and never text; no red theme.
  • Internal identifiers are unchanged and must stay so: bundle ids org.sggs.*, App Group group.org.sggs, URL scheme sggs://, Xcode targets, npm sggs-frontend, the DB filename, and the SKU sggs-ios. The brand is a display layer; none of these track it.