Skip to content

Add David Ondrej testimonial - #4896

Merged
lawrencecchen merged 2 commits into
mainfrom
feat-david-ondrej-wall-of-love
May 27, 2026
Merged

lawrencecchen merged 2 commits into
mainfrom
feat-david-ondrej-wall-of-love

Conversation

@lawrencecchen

@lawrencecchen lawrencecchen commented May 27, 2026 •

Copy link
Copy Markdown
Contributor

Adds David Ondrej's X post to the shared testimonial list, which feeds both the home page community section and Wall of Love.

Source: https://x.com/DavidOndrej1/status/2059360111336865901

Verification:

  • Parsed all web/messages JSON files
  • Ran bun run lint (existing warnings only)
  • Ran source scripts/load-dev-env.sh && bun run build
  • Checked http://localhost:4177/en and http://localhost:4177/en/wall-of-love in Chrome

Note

Low Risk
Marketing/i18n and CSS-only presentation changes on the marketing site; no auth, data, or core app logic affected.

Overview
Adds David Ondrej’s X post to the shared testimonial list used on the home community section and Wall of Love, including avatar metadata and a new davidondrej1 translation key across locale message files.

Testimonial cards now use whitespace-pre-line on the quote and translated subtitle so multi-line posts (e.g. > learn cmux / > trust me) render with line breaks instead of collapsing to one line.

Reviewed by Cursor Bugbot for commit 474ebe9. Bugbot is set up for automated code reviews on this repo. Configure here.


View with Codesmith Autofix with Codesmith
Need help on this PR? Tag @codesmith with what you need. Autofix is disabled.


Summary by cubic

Adds @DavidOndrej1’s X testimonial to the shared list used by the home page community section and Wall of Love, with avatar and i18n strings across locales. Updates the testimonial card to render multi-line text (whitespace-pre-line) and positions this entry after the DeepMind testimonial.

Written for commit 474ebe9. Summary will update on new commits. Review in cubic

Summary by CodeRabbit

  • New Features

    • Added a new testimonial to the Wall of Love, localized across many languages/locales.
  • Improvements

    • Updated testimonial rendering to preserve user line breaks in both the main quote and any translated text, maintaining existing styling and hover behavior.

Review Change Stack

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@vercel

vercel Bot commented May 27, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
cmux Ready Ready Preview, Comment May 27, 2026 10:29pm
cmux-staging Building Building Preview, Comment May 27, 2026 10:29pm

@coderabbitai

coderabbitai Bot commented May 27, 2026 •

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

A new testimonial (davidondrej1) is added to the Wall of Love testimonials array; TestimonialCard rendering now preserves line breaks. Localized testimonial strings for davidondrej1 are added across all supported locale message files.

Changes

Wall of Love testimonial addition

Layer / File(s) Summary
Testimonial data structure and line-break rendering
web/app/[locale]/testimonials.tsx
New davidondrej1 testimonial object is added to the testimonials array with avatar, handle, multi-line quoted text, and metadata. TestimonialCard paragraph classNames are updated with whitespace-pre-line to preserve line breaks in rendered text.
Localized testimonial text for all languages
web/messages/ar.json, web/messages/bs.json, web/messages/da.json, web/messages/de.json, web/messages/en.json, web/messages/es.json, web/messages/fr.json, web/messages/it.json, web/messages/ja.json, web/messages/km.json, web/messages/ko.json, web/messages/no.json, web/messages/pl.json, web/messages/pt-BR.json, web/messages/ru.json, web/messages/th.json, web/messages/tr.json, web/messages/uk.json, web/messages/zh-CN.json, web/messages/zh-TW.json
The davidondrej1 testimonial entry is added to the wallOfLove.testimonials section in all 20 language message files with localized two-line quote text.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Poem

I’m a rabbit, nibbling lines of code 🐇,
I tuck a new voice in the Wall of Love mode.
Breaks preserved, quotes standing tall,
Twenty tongues now echo the call.
Learn cmux — trust me, that’s all!

🚥 Pre-merge checks | ✅ 17 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (17 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Add David Ondrej testimonial' clearly and concisely describes the main change: adding a new testimonial entry to the system.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Cmux Swift Actor Isolation ✅ Passed Check applies only to production Swift changes. PR modifies only web files (TypeScript/JSON); no Swift code changes present, so check is not applicable.
Cmux Swift Blocking Runtime ✅ Passed PR contains only TypeScript/React testimonial UI changes and JSON localization updates; no Swift code is modified, making the Swift blocking runtime check not applicable.
Cmux No Hacky Sleeps ✅ Passed PR contains only marketing content (testimonial data), localization strings, and CSS styling updates. No sleep, timer, polling, or delay mechanisms are introduced or modified.
Cmux Algorithmic Complexity ✅ Passed PR adds one testimonial to a 20-item fixed array with O(n) rendering; no nested loops, rescans, or algorithmic changes—complies with fixed-size collection exception in rules.
Cmux Swift Concurrency ✅ Passed PR contains only TypeScript/React and JSON files (testimonial UI and localizations); no Swift code changes, so Swift concurrency check is not applicable.
Cmux Swift @Concurrent ✅ Passed No Swift code changes in this PR; check only applies to Swift changes. All modifications are to web testimonials (TypeScript/React) and JSON localization files.
Cmux Swift File And Package Boundaries ✅ Passed PR contains no Swift file changes (only web/testimonials.tsx and localization JSON files), so Swift package boundary rules are not applicable.
Cmux Swift Logging ✅ Passed PR contains only TypeScript/React and JSON translation files; no Swift code changes present, making the Swift logging rule inapplicable.
Cmux User-Facing Error Privacy ✅ Passed PR adds testimonial marketing content to Wall of Love section. Content does not constitute user-facing error messages, alerts, command output, or recovery copy covered by user-facing-errors.md policy.
Cmux Full Internationalization ✅ Passed PR adds davidondrej1 testimonial to all 20 locales in web/messages/ via next-intl; every locale in web/i18n/routing.ts has matching translation entries with proper multi-line formatting.
Cmux Swiftui State Layout ✅ Passed PR contains no SwiftUI code; only TypeScript/React components and JSON translation files. SwiftUI state layout check is not applicable.
Cmux Architecture Rethink ✅ Passed PR contains no Swift code—only web/TypeScript changes (testimonials.tsx) and locale JSON files. The swift-architectural-rethink check applies only to Swift architectural changes.
Cmux Swift Auxiliary Window Close Shortcuts ✅ Passed PR contains no Swift code changes. Check applies only to Swift auxiliary window modifications; this PR modifies only TypeScript/JSX and JSON files for testimonial content and translations.
Description check ✅ Passed The PR description contains a clear summary of changes, verification steps, and testing performed, though it lacks some template sections.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat-david-ondrej-wall-of-love

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.

@greptile-apps

greptile-apps Bot commented May 27, 2026 •

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds David Ondrej's X testimonial to the shared testimonials list used by the home page community section and Wall of Love, with full i18n coverage across all 20 supported locales and a whitespace-pre-line CSS fix so the blockquote-style multi-line quote renders correctly.

  • Adds the davidondrej1 entry to testimonials.tsx with avatar, handle, URL, and the two-line \n-delimited quote text.
  • Applies whitespace-pre-line to both the primary testimonial <p> and the translated <p> in TestimonialCard, ensuring line breaks render correctly for all locales.
  • Adds translated testimonials.davidondrej1 strings across all 20 locale message files matching web/i18n/routing.ts.

Confidence Score: 5/5

Safe to merge — marketing copy and a targeted CSS fix with no app logic, auth, or API changes.

All 20 locales defined in web/i18n/routing.ts have the new davidondrej1 translation key. Both the primary text and the translation paragraph now carry whitespace-pre-line, so the two-line blockquote-style quote renders correctly in every locale. The avatar is present and referenced correctly. No regressions are introduced to existing testimonials or surrounding code.

No files require special attention.

Important Files Changed

Filename Overview
web/app/[locale]/testimonials.tsx Adds David Ondrej testimonial entry and applies whitespace-pre-line to both the primary text and translation <p> elements so multi-line quotes render correctly.
web/messages/en.json Adds testimonials.davidondrej1 key with the original English quote text.
web/messages/fr.json Representative of all 19 non-English locale files — each adds the testimonials.davidondrej1 translation with \n preserved for the blockquote-style two-line quote.
web/public/avatars/davidondrej1.jpg Binary avatar image added for the new testimonial, referenced by the new entry in testimonials.tsx.

Reviews (2): Last reviewed commit: "Move David Ondrej testimonial after Deep..." | Re-trigger Greptile

Comment thread web/app/[locale]/testimonials.tsx
coderabbitai[bot]
coderabbitai Bot previously requested changes May 27, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 4

🤖 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 `@web/messages/de.json`:
- Line 1070: Replace the raw ">" quote markers in the testimonials.davidondrej1
JSON value with HTML-escaped "&gt;" and ensure the newline escape sequence "\n"
remains between lines; update the string currently set to "> lerne cmux\n> glaub
mir" to use "&gt; lerne cmux\n&gt; glaub mir" so it follows the locale-specific
testimonial pattern used by the German messages.

In `@web/messages/es.json`:
- Line 1070: The testimonial string for key "davidondrej1" uses raw '>'
characters instead of HTML-escaped quotes and must be formatted as HTML-escaped
quote lines separated by an explicit newline; update the value for davidondrej1
to replace each leading '>' with '&gt;' and ensure the two lines are separated
by '\n' (i.e., "&gt; aprende cmux\n&gt; créeme") so it matches the locale's
testimonials formatting rules.

In `@web/messages/fr.json`:
- Line 1070: Replace the plain angle-bracket quote in the "davidondrej1" message
with HTML-escaped quote markers to match other locales; specifically update the
value for the "davidondrej1" key so each leading '>' becomes '&gt;' and preserve
the explicit newline (`\n`) between lines (i.e., use "&gt; apprends cmux\n&gt;
crois-moi") to match the format used in de.json and es.json.

In `@web/messages/zh-TW.json`:
- Line 1070: Update the testimonial entry keyed by "davidondrej1" in the zh-TW
`testimonials` map to replace each plain ">" quote marker with the HTML-escaped
"&gt;" and ensure the quoted lines end with an explicit newline sequence ("\n")
so formatting matches other locales (see structure used in `testimonials`
entries).
🪄 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: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 895c137a-846c-41f4-8add-5bd13dfb9eac

📥 Commits

Reviewing files that changed from the base of the PR and between 1521a99 and 20f1756.

⛔ Files ignored due to path filters (1)
  • web/public/avatars/davidondrej1.jpg is excluded by !**/*.jpg
📒 Files selected for processing (21)
  • web/app/[locale]/testimonials.tsx
  • web/messages/ar.json
  • web/messages/bs.json
  • web/messages/da.json
  • web/messages/de.json
  • web/messages/en.json
  • web/messages/es.json
  • web/messages/fr.json
  • web/messages/it.json
  • web/messages/ja.json
  • web/messages/km.json
  • web/messages/ko.json
  • web/messages/no.json
  • web/messages/pl.json
  • web/messages/pt-BR.json
  • web/messages/ru.json
  • web/messages/th.json
  • web/messages/tr.json
  • web/messages/uk.json
  • web/messages/zh-CN.json
  • web/messages/zh-TW.json

Comment thread web/messages/de.json
"testimonials": {
"mitchellh": "Und wieder ein libghostty-basiertes Projekt, diesmal ein macOS-Terminal mit vertikalen Tabs, besserer Organisation/Benachrichtigungen, eingebettetem/skriptfähigem Browser, speziell für Leute, die viele terminalbasierte Agenten-Workflows nutzen.",
"steipete": "Ich bin spät dran, aber cmux ist großartig. Aktuelle Aufteilung: Codex-Mac-App für Wissensarbeit, Lernen und Lesen; cmux + Codex CLI fürs Coding.",
"davidondrej1": "> lerne cmux\n> glaub mir",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Use HTML-escaped quote markers for the German testimonial key.

Line 1070 should use &gt; formatting to match the required locale-specific testimonial pattern.

Proposed fix
-    "davidondrej1": "> lerne cmux\n> glaub mir",
+    "davidondrej1": "&gt; lerne cmux\n&gt; glaub mir",

As per coding guidelines, web/messages/de.json must keep testimonials.davidondrej1 as HTML-escaped quote lines using &gt; ... with \n.

📝 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.

Suggested change
"davidondrej1": "> lerne cmux\n> glaub mir",
"davidondrej1": "&gt; lerne cmux\n&gt; glaub mir",
🤖 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 `@web/messages/de.json` at line 1070, Replace the raw ">" quote markers in the
testimonials.davidondrej1 JSON value with HTML-escaped "&gt;" and ensure the
newline escape sequence "\n" remains between lines; update the string currently
set to "> lerne cmux\n> glaub mir" to use "&gt; lerne cmux\n&gt; glaub mir" so
it follows the locale-specific testimonial pattern used by the German messages.

Comment thread web/messages/es.json
"testimonials": {
"mitchellh": "Otro proyecto basado en libghostty, esta vez un terminal macOS con pestanas verticales, mejor organizacion/notificaciones, navegador integrado/scriptable, dirigido especificamente a personas que usan muchos flujos de trabajo de agentes basados en terminal.",
"steipete": "Llego tarde, pero cmux es genial. División actual: app de Codex para Mac para trabajo de conocimiento, aprendizaje y lectura; cmux + Codex CLI para programar.",
"davidondrej1": "> aprende cmux\n> créeme",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Format violation: Use HTML-escaped &gt; instead of plain >.

The referenced documentation for es.json explicitly mandates: "keep the text formatted as HTML-escaped quote lines with &gt; ... separated by an explicit newline (\n)" with the example &gt; aprende cmux\n&gt; créeme.

The current implementation uses plain > characters, which violates the documented pattern.

🔧 Proposed fix to match documented format
-    "davidondrej1": "> aprende cmux\n> créeme",
+    "davidondrej1": "&gt; aprende cmux\n&gt; créeme",

As per coding guidelines: Referenced documentation web/messages/es.json states "use the same stable key (davidondrej1) in the locale's testimonials map and keep the text formatted as HTML-escaped quote lines with &gt; ... separated by an explicit newline (\n)."

🤖 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 `@web/messages/es.json` at line 1070, The testimonial string for key
"davidondrej1" uses raw '>' characters instead of HTML-escaped quotes and must
be formatted as HTML-escaped quote lines separated by an explicit newline;
update the value for davidondrej1 to replace each leading '>' with '&gt;' and
ensure the two lines are separated by '\n' (i.e., "&gt; aprende cmux\n&gt;
créeme") so it matches the locale's testimonials formatting rules.

Comment thread web/messages/fr.json
"testimonials": {
"mitchellh": "Encore un projet base sur libghostty, cette fois un terminal macOS avec des onglets verticaux, une meilleure organisation/notifications, un navigateur integre/scriptable, specifiquement destine aux gens qui utilisent beaucoup de workflows d'agents en terminal.",
"steipete": "J'arrive tard, mais cmux est excellent. Répartition actuelle : l'app Mac Codex pour le travail de connaissance, l'apprentissage et la lecture ; cmux + Codex CLI pour coder.",
"davidondrej1": "> apprends cmux\n> crois-moi",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Format violation: Use HTML-escaped &gt; instead of plain >.

The referenced documentation for shared testimonial entries mandates HTML-escaped quote formatting with &gt; followed by newlines. The pattern shown in de.json documentation is &gt; lerne cmux\n&gt; glaub mir, and es.json documentation shows &gt; aprende cmux\n&gt; créeme.

The current implementation uses plain > characters, which is inconsistent with the documented pattern for testimonial quote formatting.

🔧 Proposed fix to match documented format
-    "davidondrej1": "> apprends cmux\n> crois-moi",
+    "davidondrej1": "&gt; apprends cmux\n&gt; crois-moi",

As per coding guidelines: Referenced documentation web/messages/de.json and web/messages/es.json both specify to "preserve the quote formatting as HTML-escaped text using &gt; ... plus an explicit newline (\n)."

📝 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.

Suggested change
"davidondrej1": "> apprends cmux\n> crois-moi",
"davidondrej1": "&gt; apprends cmux\n&gt; crois-moi",
🤖 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 `@web/messages/fr.json` at line 1070, Replace the plain angle-bracket quote in
the "davidondrej1" message with HTML-escaped quote markers to match other
locales; specifically update the value for the "davidondrej1" key so each
leading '>' becomes '&gt;' and preserve the explicit newline (`\n`) between
lines (i.e., use "&gt; apprends cmux\n&gt; crois-moi") to match the format used
in de.json and es.json.

Comment thread web/messages/zh-TW.json
"testimonials": {
"mitchellh": "又一個基於 libghostty 的專案,這次是一個帶垂直分頁、更好的組織/通知、內建可編寫腳本瀏覽器的 macOS 終端機,專門針對大量使用終端機 agent 工作流程的使用者。",
"steipete": "來晚了,但 cmux 很棒。目前分工:Codex Mac App 用於知識工作、學習和閱讀;cmux + Codex CLI 用於寫程式。",
"davidondrej1": "> 學 cmux\n> 相信我",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Use HTML-escaped &gt; instead of plain > for quote formatting.

The testimonial text uses plain > characters, but the documented pattern requires HTML-escaped &gt; to match other locales. As per coding guidelines, testimonial entries should preserve the quote formatting as HTML-escaped text using &gt; ... plus an explicit newline.

🔧 Proposed fix
-    "davidondrej1": "> 學 cmux\n> 相信我",
+    "davidondrej1": "&gt; 學 cmux\n&gt; 相信我",

Based on learnings from web/messages/de.json: "keep the testimonial entry under the locale's testimonials map using a stable key (here: davidondrej1) and preserve the quote formatting as HTML-escaped text using &gt; ... plus an explicit newline (\n)."

📝 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.

Suggested change
"davidondrej1": "> 學 cmux\n> 相信我",
"davidondrej1": "&gt; 學 cmux\n&gt; 相信我",
🤖 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 `@web/messages/zh-TW.json` at line 1070, Update the testimonial entry keyed by
"davidondrej1" in the zh-TW `testimonials` map to replace each plain ">" quote
marker with the HTML-escaped "&gt;" and ensure the quoted lines end with an
explicit newline sequence ("\n") so formatting matches other locales (see
structure used in `testimonials` entries).

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 474ebe9. Configure here.

name: "David Ondrej",
handle: "@DavidOndrej1",
avatar: "/avatars/davidondrej1.jpg",
text: "> learn cmux\n> trust me",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Newlines in testimonial text collapse on homepage

Medium Severity

The new davidondrej1 testimonial contains a \n newline in its text field. The whitespace-pre-line class was added to TestimonialCard (Wall of Love page), so newlines render correctly there. However, the homepage community section renders testimonial text inside a plain <span> without whitespace-pre-line, so the newline collapses into a space and the quote displays as "> learn cmux > trust me" — losing the intended two-line formatting.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit 474ebe9. Configure here.

@lawrencecchen
lawrencecchen dismissed coderabbitai[bot]’s stale review May 27, 2026 22:44

Addressed in 474ebe9; latest CodeRabbit status is green.

@lawrencecchen
lawrencecchen merged commit cefe53b into main May 27, 2026
21 checks passed
@lawrencecchen
lawrencecchen deleted the feat-david-ondrej-wall-of-love branch May 27, 2026 22:45

This branch was successfully deployed

1 active deployment
Preview – cmux — 474ebe99 Deployed May 27, 2026 by vercel[bot]
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