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
brunobergher pushed a commit that referenced this pull request Oct 1, 2025
Co-authored-by: roomote[bot] <219738659+roomote[bot]@users.noreply.github.com>
mini2s added a commit to zgsm-ai/costrict that referenced this pull request Oct 1, 2025