fix: update hero terminal to show CLI install command#5
fix: update hero terminal to show CLI install command#5sidneyswift wants to merge 1 commit intomainfrom
Conversation
Made-with: Cursor
📝 WalkthroughWalkthroughA new Next.js page component Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 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: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@app/page.tsx`:
- Around line 5-20: The CAPABILITIES and CODE_LINES arrays in app/page.tsx are
hardcoded page/brand copy; extract these into the canonical locations by moving
capability entries into lib/copy/ (e.g., export a capabilities array or JSON)
and CLI/example lines into lib/config.ts or lib/copy/ as appropriate, then
import those exports into app/page.tsx and replace the inline constants
(CAPABILITIES, CODE_LINES) with the imported references; ensure
filenames/exports are named clearly (e.g., capabilities, exampleCliLines) and
update any component usage in app/page.tsx to use the new imports.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
| const CAPABILITIES = [ | ||
| { name: "Research", desc: "Artist profiles, audience data, competitor analysis, chart tracking" }, | ||
| { name: "Content", desc: "Videos, images, captions, social posts — from artist context, not templates" }, | ||
| { name: "Catalog", desc: "Ingest, normalize, and manage music catalogs at scale" }, | ||
| { name: "Distribution", desc: "Post to socials, pitch to playlists, schedule releases" }, | ||
| ]; | ||
|
|
||
| const CODE_LINES = [ | ||
| { dim: true, text: "# Install the CLI" }, | ||
| { dim: false, text: "npm install -g @recoupable/cli" }, | ||
| { dim: true, text: "" }, | ||
| { dim: true, text: "# Research an artist" }, | ||
| { dim: false, text: "recoup research \"Gatsby Grace\"" }, | ||
| { dim: false, text: "recoup research metrics \"Gatsby Grace\" --source spotify" }, | ||
| { dim: false, text: "recoup research similar \"Gatsby Grace\" --json" }, | ||
| ]; |
There was a problem hiding this comment.
Move hardcoded page copy and brand text out of app/page.tsx.
This file hardcodes marketing copy and brand strings in the component (for example, Line 53 and Line 179), which breaks the repo rule for copy/config ownership.
Proposed refactor direction
import Link from "next/link";
import Image from "next/image";
import { siteConfig } from "@/lib/config";
+import { homePageCopy } from "@/lib/copy/home";
-const CAPABILITIES = [
- { name: "Research", desc: "Artist profiles, audience data, competitor analysis, chart tracking" },
- ...
-];
-
-const CODE_LINES = [
- { dim: true, text: "# Install the CLI" },
- ...
-];
+const { capabilities: CAPABILITIES, codeLines: CODE_LINES } = homePageCopy;
...
-<p className="text-lg sm:text-xl ...">
- Research. Content. Catalog. Distribution. 40+ endpoints, MCP-native, CLI-ready.
- ...
-</p>
+<p className="text-lg sm:text-xl ...">{homePageCopy.hero.subtext}</p>
...
-<h2 className="font-display text-section text-center mb-4">Why teams build on Recoupable</h2>
+<h2 className="font-display text-section text-center mb-4">
+ {homePageCopy.sections.whyTeamsBuildOn.replace("{brand}", siteConfig.name)}
+</h2>As per coding guidelines: "Edit brand values and page copy only in lib/config.ts and lib/copy/ respectively—never hardcode brand values in components".
Also applies to: 22-236
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@app/page.tsx` around lines 5 - 20, The CAPABILITIES and CODE_LINES arrays in
app/page.tsx are hardcoded page/brand copy; extract these into the canonical
locations by moving capability entries into lib/copy/ (e.g., export a
capabilities array or JSON) and CLI/example lines into lib/config.ts or
lib/copy/ as appropriate, then import those exports into app/page.tsx and
replace the inline constants (CAPABILITIES, CODE_LINES) with the imported
references; ensure filenames/exports are named clearly (e.g., capabilities,
exampleCliLines) and update any component usage in app/page.tsx to use the new
imports.
There was a problem hiding this comment.
1 issue found across 1 file
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="app/page.tsx">
<violation number="1" location="app/page.tsx:22">
P1: Custom agent: **Enforce Clear Code Style and Maintainability Practices**
Rule 1 violation: this file exceeds the 100-line limit (238 lines) and packs multiple page sections into one component, reducing maintainability. Split `HomePage` into smaller section components and keep this file as a composition layer.</violation>
</file>
Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review, or fix all with cubic.
| { dim: false, text: "recoup research similar \"Gatsby Grace\" --json" }, | ||
| ]; | ||
|
|
||
| export default function HomePage() { |
There was a problem hiding this comment.
P1: Custom agent: Enforce Clear Code Style and Maintainability Practices
Rule 1 violation: this file exceeds the 100-line limit (238 lines) and packs multiple page sections into one component, reducing maintainability. Split HomePage into smaller section components and keep this file as a composition layer.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At app/page.tsx, line 22:
<comment>Rule 1 violation: this file exceeds the 100-line limit (238 lines) and packs multiple page sections into one component, reducing maintainability. Split `HomePage` into smaller section components and keep this file as a composition layer.</comment>
<file context>
@@ -0,0 +1,238 @@
+ { dim: false, text: "recoup research similar \"Gatsby Grace\" --json" },
+];
+
+export default function HomePage() {
+ return (
+ <>
</file context>
Summary
Updates the hero terminal code block on the marketing homepage.
Before: Outdated curl example with wrong auth header format
After:
npm install -g @recoupable/cli+ real research commandsMade with Cursor
Summary by cubic
Update the marketing homepage hero terminal to show the CLI install and real research commands. Replaces the outdated curl example and fixes incorrect auth guidance.
npm install -g @recoupable/cliand samplerecoupresearch commands.Written for commit 2479872. Summary will update on new commits.
Summary by CodeRabbit