refactor: rename product brand to Wisp#18
Conversation
The openwhispr.com name was already taken; rebrand the user-facing product to "Wisp". Replaces the OpenWispr display string across the UI, i18n, user-facing Rust strings, productName, README, landing site, and the npm package name. Internal identifiers are intentionally preserved to avoid breaking existing installs: - bundle identifier com.hudsonbrendon.openwispr (keeps macOS TCC grants and the per-user data directory) - the GitHub repo / OTA update URL (keeps auto-update continuity) - the Rust crate / binary name (no user impact) The macOS bundle now builds as Wisp.app; the updater swaps the bundle contents in place, so existing users keep their permissions and data. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
📝 WalkthroughWalkthroughAll occurrences of the product name "OpenWispr" are replaced with "Wisp" across the repository. Changes span the Tauri app config, npm package manifest, Rust backend runtime strings and i18n dictionaries for all 15 locales, frontend React components and i18n, the marketing site HTML, and the README. ChangesOpenWispr → Wisp Rebrand
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@README.md`:
- Line 43: The table of contents link for "Why Wisp" at line 43 references an
incorrect anchor fragment. Change the link destination from the old fragment
`#why-openwispr` to the correct fragment `#why-wisp` to match the actual heading
"## Why Wisp" in the document. This will ensure the TOC link properly navigates
to the correct section.
In `@site/index.html`:
- Around line 218-221: The landing page HTML has been rebranded to use "Wisp"
terminology, but the runtime download builder in site/assets/app.js (lines
153-207) still references "OpenWispr" in the filename patterns it generates and
in the fallback download label. Update the download builder logic to emit
"Wisp_..." prefixed filenames instead of "OpenWispr_..." filenames and change
the fallback label text from "Download OpenWispr" to "Download Wisp" to maintain
consistent branding across the landing page and the download link generation
logic.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 1bd7fc20-a683-473a-a995-fd4e2c1c1679
📒 Files selected for processing (14)
README.mdpackage.jsonsite/index.htmlsrc-tauri/src/commands.rssrc-tauri/src/config.rssrc-tauri/src/inject.rssrc-tauri/src/text.rssrc-tauri/src/uitext.rssrc-tauri/tauri.conf.jsonsrc/components/Sidebar.test.tsxsrc/components/Sidebar.tsxsrc/lib/i18n.tsxsrc/routes/Dashboard.test.tsxsrc/routes/Dictionary.test.tsx
|
|
||
| - [What it is](#what-it-is) | ||
| - [Why OpenWispr](#why-openwispr) | ||
| - [Why Wisp](#why-openwispr) |
There was a problem hiding this comment.
Fix the broken TOC anchor for “Why Wisp”.
The link target still points to #why-openwispr, but the heading is now ## Why Wisp (fragment #why-wisp), so the contents link is broken.
Suggested fix
-- [Why Wisp](`#why-openwispr`)
+- [Why Wisp](`#why-wisp`)📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - [Why Wisp](#why-openwispr) | |
| - [Why Wisp](`#why-wisp`) |
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)
[warning] 43-43: Link fragments should be valid
(MD051, link-fragments)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@README.md` at line 43, The table of contents link for "Why Wisp" at line 43
references an incorrect anchor fragment. Change the link destination from the
old fragment `#why-openwispr` to the correct fragment `#why-wisp` to match the
actual heading "## Why Wisp" in the document. This will ensure the TOC link
properly navigates to the correct section.
Source: Linters/SAST tools
| Download Wisp for your platform and start dictating in minutes. Free, open | ||
| source, and entirely on-device. | ||
| </p> | ||
| <a class="btn" id="cta-dl" href="https://github.com/hudsonbrendon/openwispr/releases/latest"><span data-i18n="cta_button">Download</span></a> |
There was a problem hiding this comment.
Update landing-site download model to match the Wisp artifact naming.
The CTA copy was rebranded, but the runtime download builder (site/assets/app.js, Lines 153-207) still emits OpenWispr_... filenames and a fallback label of “Download OpenWispr”. That creates a cross-file branding/link contract mismatch and can break fallback downloads if release assets are now Wisp-prefixed.
Suggested fix (cross-file)
--- a/site/assets/app.js
+++ b/site/assets/app.js
@@
- macApple: base + "OpenWispr_" + version + "_aarch64.dmg",
- macIntel: base + "OpenWispr_" + version + "_x64.dmg",
- windows: base + "OpenWispr_" + version + "_x64-setup.exe",
- linuxAppImage: base + "OpenWispr_" + version + "_amd64.AppImage",
- linuxDeb: base + "OpenWispr_" + version + "_amd64.deb",
- linuxRpm: base + "OpenWispr-" + version + "-1.x86_64.rpm",
+ macApple: base + "Wisp_" + version + "_aarch64.dmg",
+ macIntel: base + "Wisp_" + version + "_x64.dmg",
+ windows: base + "Wisp_" + version + "_x64-setup.exe",
+ linuxAppImage: base + "Wisp_" + version + "_amd64.AppImage",
+ linuxDeb: base + "Wisp_" + version + "_amd64.deb",
+ linuxRpm: base + "Wisp-" + version + "-1.x86_64.rpm",
@@
- fallback: "Download OpenWispr",
+ fallback: "Download Wisp",🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@site/index.html` around lines 218 - 221, The landing page HTML has been
rebranded to use "Wisp" terminology, but the runtime download builder in
site/assets/app.js (lines 153-207) still references "OpenWispr" in the filename
patterns it generates and in the fallback download label. Update the download
builder logic to emit "Wisp_..." prefixed filenames instead of "OpenWispr_..."
filenames and change the fallback label text from "Download OpenWispr" to
"Download Wisp" to maintain consistent branding across the landing page and the
download link generation logic.
What
Rebrand the user-facing product from OpenWispr to Wisp (the
openwhispr.comname was already taken).Replaces the
OpenWisprdisplay string across:productName, README, landing site, npm package nameIntentionally preserved (don't break existing installs)
com.hudsonbrendon.openwispr→ keeps macOS TCC (Mic/Accessibility) grants and the per-user data dir (settings/history).Test
vitest: 201/201 pass (tests assert on brand strings, updated alongside).cargo check+cargo test: clean.pnpm tauri build→ buildsWisp.app; reinstalled and launched, TCC grants carried over.Follow-ups (separate, heavier — not in this PR)
Renaming the bundle id, GitHub repo, and buying a domain (e.g.
wisp.audio/wisp.fm, both available) break TCC/OTA continuity and are deliberately out of scope here.🤖 Generated with Claude Code
Summary by CodeRabbit
Documentation
Chores