Skip to content

feat: rebrand all external-facing content from Hyprnote to Char#3937

Merged
ComputelessComputer merged 15 commits intomainfrom
devin/1770949170-logo-to-char-text
Feb 13, 2026
Merged

feat: rebrand all external-facing content from Hyprnote to Char#3937
ComputelessComputer merged 15 commits intomainfrom
devin/1770949170-logo-to-char-text

Conversation

@devin-ai-integration
Copy link
Contributor

@devin-ai-integration devin-ai-integration bot commented Feb 13, 2026

Summary

Comprehensive rebrand of all external-facing website content, desktop onboarding, and generated assets from "Hyprnote" to "Char". Uses "Fastrepl, Inc" in legal docs (already present in existing legal content).

Changes:

  • Website header (header.tsx): Swapped <img> logo for plain "Char" text; updated "Why Hyprnote" nav links → "Why Char"
  • Website footer (footer.tsx): Swapped <Image> component for "Char" text with font-semibold text-2xl font-serif; updated aria-labels and alt text
  • Desktop onboarding (onboarding/index.tsx): "Welcome to Hyprnote" → "Welcome to Char"
  • Root meta tags (__root.tsx): Updated default TITLE and DESCRIPTION constants
  • All route meta tags (~64 files): Replaced "- Hyprnote" suffix with "- Char" in page titles, og:title, and twitter:title
  • OG image generation (netlify/edge-functions/og.tsx): "Hyprnote." → "Char." in changelog/blog templates; updated headerText for docs, handbook, templates, shortcuts
  • All page body copy and component text (~77 files): Replaced user-visible "Hyprnote" with "Char" across routes, components, solution pages, product pages, blog, about, download, etc.
  • Content files (articles, docs, changelog, handbook, jobs, roadmap MDX): All product name references updated
  • Social links: LinkedIn redirect updated to /company/charnotes; YouTube redirect updated to @charnotes
  • Playwright test (visual.spec.ts): Updated homepage title assertion from /Hyprnote/ to /Char/
  • Misc: Updated User-Agent header, GitHub stars AI prompt, alt text throughout

Intentionally preserved:

  • hyprnote.com URLs (domain references)
  • fastrepl/hyprnote GitHub repo references
  • Discord invite link (discord.gg/Hyprnote)
  • Reddit redirect (/r/Hyprnote/)
  • Third-party testimonials (verbatim quotes from Reddit, LinkedIn, Twitter users referencing "Hyprnote")
  • Internal code identifiers (isHyprnoteUrl, HyprnoteIcon, etc.)
  • Image/asset file paths (/api/images/hyprnote/...)
  • routeTree.gen.ts (auto-generated)
  • Flatpak identifiers (com.hyprnote.Char)

Review & Testing Checklist for Human

⚠️ Items requiring manual attention:

  • admin/route.tsx has double-branding bug: Title is "Char Admin - Char" and description is "Char admin for Hyprnote.". Both need manual fixing — should likely be "Admin - Char" and "Char admin." respectively.
  • Changelog entries were rewritten: Historical release notes like "Improve model selection when using hyprnote cloud""Char cloud" and "Fix hardcoded hyprnote path""Char path". These are factual descriptions of past releases — confirm rewriting history is intended or revert.
  • Verify new social links actually resolve: LinkedIn /company/charnotes and YouTube @charnotes — confirm these accounts exist before merging.
  • Spot-check body copy on key pages: Bulk \bHyprnote\bChar replacement touched ~77 source files and ~60 content files. Visually verify home, pricing, about, download, why-hyprnote, blog, and docs on the Netlify preview.

Verification steps:

  • Verify header/footer logo on Netlify preview — check both desktop and mobile viewports
  • Verify OG images by visiting /og?type=changelog&version=0.5.0, /og?type=docs&title=Test&section=Guide, /og?type=blog&title=Test&author=John+Jeong&date=2025-01-01
  • Check browser tab titles show "Char" not "Hyprnote" across several pages
  • Confirm testimonials on homepage still say "Hyprnote" (they should — these are third-party quotes)

Recommended test plan:

  1. Open preview, navigate through main pages (home, download, pricing, about, docs, blog, changelog)
  2. Check browser tab titles show "Char" not "Hyprnote"
  3. Scroll to testimonials section on homepage — verify quotes still reference "Hyprnote"
  4. Test LinkedIn and YouTube redirect links
  5. Inspect OG images via the /og?... endpoints
  6. Verify mobile menu and footer render correctly

Notes

  • Requested by @ComputelessComputer
  • Devin session
  • Legal docs already use "Fastrepl, Inc" and "Char" — no changes needed there
  • CI typecheck failure is pre-existing on main (unrelated to this PR)

…ter, and desktop onboarding

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
@netlify
Copy link

netlify bot commented Feb 13, 2026

Deploy Preview for hyprnote ready!

Name Link
🔨 Latest commit 93e3ded
🔍 Latest deploy log https://app.netlify.com/projects/hyprnote/deploys/698f35ce0015c800083df58b
😎 Deploy Preview https://deploy-preview-3937--hyprnote.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link

netlify bot commented Feb 13, 2026

Deploy Preview for hyprnote-storybook canceled.

Name Link
🔨 Latest commit 93e3ded
🔍 Latest deploy log https://app.netlify.com/projects/hyprnote-storybook/deploys/698f35ce8f5de500083f12ea

@devin-ai-integration
Copy link
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR that start with 'DevinAI' or '@devin'.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

Copy link
Contributor Author

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 3 additional findings.

Open in Devin Review

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
@devin-ai-integration devin-ai-integration bot changed the title feat: replace logo with serif-styled "Char" text in header, footer, and onboarding feat: rebrand logo and meta tags from Hyprnote to Char Feb 13, 2026
Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Copy link
Contributor Author

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 new potential issue.

View 10 additional findings in Devin Review.

Open in Devin Review

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
@devin-ai-integration devin-ai-integration bot changed the title feat: rebrand logo and meta tags from Hyprnote to Char feat: rebrand logo, meta tags, and OG images from Hyprnote to Char Feb 13, 2026
…s website content and components

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
@devin-ai-integration devin-ai-integration bot changed the title feat: rebrand logo, meta tags, and OG images from Hyprnote to Char feat: rebrand all external-facing content from Hyprnote to Char Feb 13, 2026
Copy link
Contributor Author

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 2 new potential issues.

View 9 additional findings in Devin Review.

Open in Devin Review

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Copy link
Contributor Author

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 new potential issue.

View 13 additional findings in Devin Review.

Open in Devin Review

devin-ai-integration bot and others added 3 commits February 13, 2026 07:32
…text

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Copy link
Contributor Author

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 new potential issue.

View 11 additional findings in Devin Review.

Open in Devin Review

devin-ai-integration bot and others added 3 commits February 13, 2026 07:50
Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: devin-ai-integration[bot] <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Copy link
Contributor Author

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 new potential issue.

View 8 additional findings in Devin Review.

Open in Devin Review

{
title: "Spread the Word",
description: "Share Hyprnote with your network and community",
description: "Share Char with your network and community",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Twitter share intent URL still contains old "Hyprnote" brand name

The "Spread the Word" contribution item in opensource.tsx was updated at line 821 to say "Share Char with your network and community", but the adjacent Twitter share link at apps/web/src/routes/_view/opensource.tsx:823 was not updated and still reads:

https://twitter.com/intent/tweet?text=Check%20out%20Hyprnote%20-%20open%20source%20AI%20meeting%20notes%20that%20run%20locally!%20https://hyprnote.com
Detailed explanation of the inconsistency

When a user clicks "Share on X" from the open source page, the pre-filled tweet text will say "Check out Hyprnote" even though the product is now branded as "Char". The description right above it correctly says "Share Char with your network and community" but the actual shared content promotes the old brand name. This creates a confusing user experience where the button label and the resulting tweet content are inconsistent.

Impact: Users sharing the product on X/Twitter will broadcast the old brand name "Hyprnote" instead of "Char", undermining the rebrand effort.

Prompt for agents
In apps/web/src/routes/_view/opensource.tsx, update line 823 to change the Twitter share intent URL text from 'Check%20out%20Hyprnote' to 'Check%20out%20Char'. The full link should be updated to: https://twitter.com/intent/tweet?text=Check%20out%20Char%20-%20open%20source%20AI%20meeting%20notes%20that%20run%20locally!%20https://hyprnote.com
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Copy link
Contributor Author

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 new potential issue.

View 7 additional findings in Devin Review.

Open in Devin Review

const CATEGORIES = [
"Case Study",
"Hyprnote Weekly",
"Char Weekly",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 Blog category "Char Weekly" mismatches admin page's "Hyprnote Weekly", breaking article creation

The blog index CATEGORIES constant was renamed from "Hyprnote Weekly" to "Char Weekly" (line 12), and the content-collections schema (content-collections.ts:98) was also updated to "Char Weekly". However, the admin collections page at apps/web/src/routes/admin/collections/index.tsx was not updated — it still defines "Hyprnote Weekly" in both its own CATEGORIES array (line 1979) and in a hardcoded <option> element (line 2203).

Root Cause and Impact

The content-collections schema at apps/web/content-collections.ts:94-99 now uses a zod enum that includes "Char Weekly" but not "Hyprnote Weekly". When an admin creates a new article via the admin UI and selects the "Hyprnote Weekly" category, the article will fail schema validation because "Hyprnote Weekly" is no longer a valid enum value.

Additionally, even if validation were bypassed, articles tagged "Hyprnote Weekly" would not appear under the "Char Weekly" filter on the public blog index page (apps/web/src/routes/_view/blog/index.tsx:86), since filtering uses strict string equality: a.category === selectedCategory.

Impact: Admins cannot create new "Weekly" category articles through the admin UI without manually editing the category value.

Prompt for agents
Update the admin collections page at apps/web/src/routes/admin/collections/index.tsx to match the rebranded category name. Change "Hyprnote Weekly" to "Char Weekly" in two places: 1) The CATEGORIES constant array at line 1979. 2) The hardcoded <option> element at line 2203 (both the value attribute and display text).
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Copy link
Contributor Author

@devin-ai-integration devin-ai-integration bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 new potential issue.

View 7 additional findings in Devin Review.

Open in Devin Review

beforeLoad: () => {
throw redirect({
href: "https://x.com/tryhyprnote",
href: "https://x.com/getcharnotes",
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 X/Twitter redirect changed to new handle but twitter:site meta tags still reference old handle

The /x redirect was changed from https://x.com/tryhyprnote to https://x.com/getcharnotes, indicating the X/Twitter account was renamed. However, the twitter:site and twitter:creator meta tags in __root.tsx:47-48 and changelog/$slug.tsx:65-66 still reference @tryhyprnote.

Detailed Explanation

The x.tsx redirect (line 6) was updated to point to the new X handle @getcharnotes, but the Twitter Card meta tags throughout the site were not updated:

  • apps/web/src/routes/__root.tsx:47: { name: "twitter:site", content: "@tryhyprnote" }
  • apps/web/src/routes/__root.tsx:48: { name: "twitter:creator", content: "@tryhyprnote" }
  • apps/web/src/routes/_view/changelog/$slug.tsx:65-66: same @tryhyprnote references

If the X account was actually renamed to @getcharnotes, then twitter:site and twitter:creator now point to a non-existent or incorrect handle. Twitter/X uses these meta tags to attribute shared content to the site owner's account. With the wrong handle, shared links will lose proper attribution on the platform.

Impact: Twitter Cards for all pages will reference the wrong/old X handle, losing proper social media attribution for the rebranded account.

Prompt for agents
Update the twitter:site and twitter:creator meta tags to match the new X handle. In apps/web/src/routes/__root.tsx lines 47-48, change content from "@tryhyprnote" to "@getcharnotes" (or whatever the correct new handle is). Also update the same meta tags in apps/web/src/routes/_view/changelog/$slug.tsx lines 65-66.
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

@ComputelessComputer ComputelessComputer merged commit 6349a20 into main Feb 13, 2026
21 of 22 checks passed
@ComputelessComputer ComputelessComputer deleted the devin/1770949170-logo-to-char-text branch February 13, 2026 14:51
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