Skip to content

chore(brand): lowercase "dembrane" across user-facing strings#572

Draft
spashii wants to merge 1 commit into
mainfrom
sam/echo-brand-dembrane-lowercase
Draft

chore(brand): lowercase "dembrane" across user-facing strings#572
spashii wants to merge 1 commit into
mainfrom
sam/echo-brand-dembrane-lowercase

Conversation

@spashii
Copy link
Copy Markdown
Member

@spashii spashii commented May 13, 2026

What

Brand sweep: lowercase "dembrane" wherever it appears as a user-facing brand reference, per brand/STYLE_GUIDE.md (always lowercase, even at sentence start). Triggered by the QR portal welcome screen still showing "Welcome to Dembrane!" — extends the work in #547.

Scope confirmed with Jorim in Slack (C0B2VBYU79V thread 1778665562.741619):

Changed

  • English UI source strings — t\`, , JSX text, alt, <title>, useDocumentTitle`. ~12 .tsx/.ts/.html files.
  • All 7 translation .po files (de-DE, en-US, es-ES, fr-FR, it-IT, nl-NL, uk-UA): msgid + msgstr for live entries, and #~-marked obsolete entries for consistency. Path-reference comments (#:) preserved.
  • Compiled .ts message bundles via pnpm messages:compile (ran with node_modules/.bin/lingui compile --typescript since pnpm isn't in my sandbox).
  • ASR hotwords list in server/dembrane/transcribe.py (["Dembrane", "Sameer"]["dembrane", "Sameer"]).
  • Directus admin: "Dembrane Events""dembrane events" choice label in scripts/create_schema.py and directus/sync/snapshot/fields/workspace/legal_basis.json. Directus project_name setting → "dembrane".
  • Hardcoded multilingual onboarding card text in useOnboardingCards.ts (7 languages, including German caps as Jorim explicitly OK'd).

Left alone (intentional)

  • React component / hook / prop names: DembraneLogomark, DembraneLoadingSpinner, LogoDembrane, alwaysDembrane, useDembraneChat, isDembraneKey, isDembraneUser, getDembraneEventsPrivacyCard.
  • Python identifiers, package metadata (pyproject.toml name = "Dembrane"), file paths.
  • Internal pipeline IDs that flow to DB / API responses: Dembrane-25-09, Dembrane-26-01-redaction, Dembrane-25-09-assemblyai-partial, Dembrane-Webhook/1.0 user-agent.
  • The Notion privacy-policy URL slug (Privacy-Statement-Dembrane-…).
  • Jinja prompt templates and agent/agent.py lines that quote "Dembrane" as the incorrect spelling to avoid.
  • .po path-reference comments (#:) pointing to component files like DembraneLoadingSpinner/index.tsx.
  • brand/STYLE_GUIDE.md example line showing the incorrect form.
  • Internal dev tools (tools/usage-tracker/), READMEs, cypress/TEST_DOCUMENTATION.md.
  • Test fixtures using "Dembrane" as a hotword string.

Verification

  • tsc --noEmit on echo/frontend — clean.
  • python3 -m py_compile on changed .py files — clean.
  • lingui compile --typescript — clean, no warnings, all .ts bundles have 0 capital "Dembrane".
  • python3 -c 'import json; json.load(...)' on changed .json files — clean.
  • Grep across the repo for remaining "Dembrane" — all remaining occurrences are in the intentionally-skipped categories above.

Confidence

Medium-high. The mechanical replacement is straightforward and verified by grep/typecheck. Two areas to keep an eye on:

  1. Directus admin labels (project_name in collections/settings.json, "dembrane events" text choice). These are sync-snapshot files — applying them rewrites Directus settings. If the deploy pipeline syncs these automatically, the label change ships at deploy time. I haven't tested the Directus sync path. Question for review: is changing project_name here desired, or should this stay "Dembrane" for the admin context?
  2. Compiled .ts files: I ran lingui compile rather than pnpm messages:compile, because pnpm isn't in my environment. The CLI should be equivalent (same binary), but if CI runs the pnpm-flavored script and the output drifts, this is where to look.

Notes

  • No new strings added; all msgids now match their (lowercased) source. No translator action needed.
  • Stale duplicate msgids in en-US.po (live + obsolete with same text) predate this PR — I didn't touch them beyond the casing change. lingui extract --clean would clean those up but rewrites 20k+ lines, so I left it for a separate PR.

Originating Slack message: thread 1778665562.741619 in #general (or whichever — C0B2VBYU79V).

Sweep: english UI strings (t``, <Trans>, alt, title), all 7
translation .po files (msgid + msgstr, incl. obsolete entries),
recompiled .ts message bundles, asr hotwords in transcribe.py,
"Dembrane Events" → "dembrane events" admin label in directus
schema + sync snapshot, and the directus project_name setting.

Leaves untouched (per requester clarification):
- react component names (DembraneLogomark, DembraneLoadingSpinner,
  alwaysDembrane, useDembraneChat, LogoDembrane, etc.)
- python identifiers, file paths, package metadata
- internal pipeline ids (Dembrane-25-09, Dembrane-26-01-redaction)
- the notion privacy-policy url slug
- jinja prompt templates that quote "Dembrane" as the
  *incorrect* example
- internal dev tools (tools/usage-tracker), readmes, cypress test
  docs
- po path comments (#:) that reference real file paths

Co-authored-by: Jorim Theuns <jorim@dembrane.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 13, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 43fa7733-3b73-403b-bab3-79bef4f64a9c

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch sam/echo-brand-dembrane-lowercase

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Copy Markdown

Hi !

Thank you for contributing to Dembrane ECHO! Before we consider your Pull Request, we ask that you sign our Contributor License Agreement (CLA). This is only required for your first Pull Request.

Please review the CLA, and sign it by adding your GitHub username to the contributors.yml file. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant