Skip to content

Conversation

@mrubens
Copy link
Collaborator

@mrubens mrubens commented Oct 1, 2025

Add JSON-LD to our website to try to connect all of our different properties in Google's eyes


Important

Add JSON-LD structured data to homepage for SEO, update SEO title, and homepage URL.

  • Structured Data:
    • Adds StructuredData component in structured-data.tsx to render JSON-LD for SEO.
    • Includes organization, website, and software application metadata.
  • Homepage:
    • Integrates StructuredData component in page.tsx.
  • SEO:
    • Updates SEO title in seo.ts to "Roo Code – The AI dev team that gets things done".
  • Misc:

This description was created by Ellipsis for b2f273c. You can customize this summary. It will automatically update as commits are pushed.

@mrubens mrubens requested review from cte and jr as code owners October 1, 2025 03:34
@dosubot dosubot bot added size:L This PR changes 100-499 lines, ignoring generated files. enhancement New feature or request labels Oct 1, 2025
"@id": `${SEO.url}#website`,
url: SEO.url,
name: SEO.name,
alternateName: ["RooCode", "Roo Cline"],
Copy link
Contributor

Choose a reason for hiding this comment

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

Possible typo in website alternateName: 'Roo Cline' might be intended as 'Roo Code'.

Suggested change
alternateName: ["RooCode", "Roo Cline"],
alternateName: ["RooCode", "Roo Code"],

This comment was generated because it violated a code review rule: irule_VrRKWqywZ2YV2SOE.

@github-actions
Copy link
Contributor

github-actions bot commented Oct 1, 2025

🚀 Preview deployed!

Your changes have been deployed to Vercel:

Preview URL: https://roo-code-website-44ao3yv92-roo-code.vercel.app

This preview will be updated automatically when you push new commits to this PR.

Copy link
Contributor

@roomote roomote bot left a comment

Choose a reason for hiding this comment

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

I found some issues that need attention.

*/
export function getStructuredData(): StructuredDataGraph {
// Organization ID - used to link all entities
const orgId = `${SEO.url}#org`
Copy link
Contributor

Choose a reason for hiding this comment

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

P2: Ensure consistent @id with a single slash before the fragment and avoid double slashes if SEO.url ends with '/'.

Suggested change
const orgId = `${SEO.url}#org`
const orgId = `${SEO.url.replace(/\/$/, '')}/#org`


const website: WebSite = {
"@type": "WebSite",
"@id": `${SEO.url}#website`,
Copy link
Contributor

Choose a reason for hiding this comment

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

P2: Normalize WebSite @id similar to org.

Suggested change
"@id": `${SEO.url}#website`,
"@id": `${SEO.url.replace(/\/$/, '')}/#website`,


const softwareApplication: SoftwareApplication = {
"@type": "SoftwareApplication",
"@id": `${SEO.url}#vscode-extension`,
Copy link
Contributor

Choose a reason for hiding this comment

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

P2: Normalize SoftwareApplication @id similar to org.

Suggested change
"@id": `${SEO.url}#vscode-extension`,
"@id": `${SEO.url.replace(/\/$/, '')}/#vscode-extension`,

* StructuredData Component
*
* Renders JSON-LD structured data in the document head for SEO.
* This component should only be used once per page, typically in the root layout.
Copy link
Contributor

Choose a reason for hiding this comment

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

P3: The usage note suggests root layout; this PR uses it on the homepage. Adjust wording to reduce confusion.

Suggested change
* This component should only be used once per page, typically in the root layout.
* Use once per page. For sitewide JSON-LD, include it in the root layout; for page-specific JSON-LD, include it in that page component.


return (
<>
<StructuredData />
Copy link
Contributor

Choose a reason for hiding this comment

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

P3: Optional: If you want JSON-LD on all routes, consider rendering StructuredData in the root layout instead of the home page to avoid duplication and ensure consistency.

Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
@hannesrudolph hannesrudolph added the Issue/PR - Triage New issue. Needs quick review to confirm validity and assign labels. label Oct 1, 2025
@mrubens mrubens merged commit f8ed7a7 into main Oct 1, 2025
12 checks passed
@mrubens mrubens deleted the structured_data branch October 1, 2025 03:53
@github-project-automation github-project-automation bot moved this from New to Done in Roo Code Roadmap Oct 1, 2025
@github-project-automation github-project-automation bot moved this from Triage to Done in Roo Code Roadmap Oct 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request Issue/PR - Triage New issue. Needs quick review to confirm validity and assign labels. size:L This PR changes 100-499 lines, ignoring generated files.