Skip to content

chore(content): describe oRPC in llms.txt and site JSON-LD - #2313

Merged
dinwwwh merged 2 commits into
mainfrom
claude/project-thread-3of956
Oct 23, 2026
Merged

dinwwwh merged 2 commits into
mainfrom
claude/project-thread-3of956

Conversation

@dinwwwh

@dinwwwh dinwwwh commented Oct 23, 2026

Copy link
Copy Markdown
Member

Requested by dinwwwh · project thread

Config-only changes to apps/content so search engines and AI assistants get a clearer picture of what oRPC is.

Changes

  • llms.txt details block (agents.llmsTxt.details): a short "what oRPC is / when to reach for it" paragraph and list, the install command, and a note that these are the v2 beta docs with v1 at v1.orpc.dev. It lands between the tagline and the page sections, as the llms.txt spec describes.
  • seo.organization: middleapi (GitHub org, X, Open Collective as sameAs). Blume adds it to every page as the publisher.
  • seo.software: replaces the hand-written home SoftwareApplication node (same license, OS, free offer), now with GitHub and npm (@orpc/server, @orpc/client) in sameAs.
  • Duplicate JSON-LD removed. Blume's PageLayout now emits a graph on custom pages too, so:
    • the home page had two WebSite nodes (https://orpc.dev#website from Blume and https://orpc.dev/#website hand-written). The hand-written block is gone.
    • blog posts were described twice (Blume's TechArticle plus the hand-written BlogPosting), and the blog index got a TechArticle next to its Blog. structuredDataEnabled={false} on both blog pages keeps only the hand-written nodes.

Verification

Built the site locally (OG card generation turned off for the build only, since the sandbox can't reach Google Fonts; not committed) and checked dist/client:

  • / now has one graph: WebSite, Organization, WebPage, SoftwareApplication.
  • Docs pages: WebSite, Organization, TechArticle (+ breadcrumbs).
  • /blog has only Blog; posts have only BlogPosting.
  • llms.txt shows the details block right after the tagline.

pnpm docs:validate passes and ESLint is clean on blume.config.ts.

Note: the install command in the details block uses @beta, like Getting Started. It needs the same update when v2 goes stable.


Generated by Claude Code

- Add an llms.txt details block: what oRPC is, when to use it, install
  command, and the v1/v2 docs split.
- Configure seo.organization (middleapi) and seo.software (oRPC, with
  GitHub and npm sameAs), so Blume emits the Organization and
  SoftwareApplication nodes.
- Drop the hand-written home page JSON-LD, which duplicated Blume's
  WebSite node under a different @id.
- Turn off PageLayout's graph on the blog pages, which already emit
  their own BlogPosting and Blog nodes.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Qz33dCYYrmnUDSJSYPbGoz
@dinwwwh dinwwwh self-assigned this Oct 23, 2026
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
orpc 3a1d7e6 Commit Preview URL

Branch Preview URL
Oct 23 2026, 05:57 AM

@codecov

codecov Bot commented Oct 23, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@macroscopeapp

macroscopeapp Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Approvability

Verdict: Approved at 4c416b0

Macroscope's review found this PR approvable — The changes add descriptive llms.txt content and centralized JSON-LD metadata, while preventing duplicate framework-generated graphs on the custom blog pages. Runtime impact is limited to prerendered site metadata and does not affect the oRPC library or customer request paths.

No code changes detected at 3a1d7e6. Prior analysis still applies.

You can add or adjust custom eligibility rules. Learn more.

@pkg-pr-new

pkg-pr-new Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
More templates

@orpc/ai-sdk

npm i https://pkg.pr.new/@orpc/ai-sdk@2313

@orpc/arktype

npm i https://pkg.pr.new/@orpc/arktype@2313

@orpc/bun

npm i https://pkg.pr.new/@orpc/bun@2313

@orpc/client

npm i https://pkg.pr.new/@orpc/client@2313

@orpc/cloudflare

npm i https://pkg.pr.new/@orpc/cloudflare@2313

@orpc/contract

npm i https://pkg.pr.new/@orpc/contract@2313

@orpc/experimental-effect

npm i https://pkg.pr.new/@orpc/experimental-effect@2313

@orpc/evlog

npm i https://pkg.pr.new/@orpc/evlog@2313

@orpc/hibernation

npm i https://pkg.pr.new/@orpc/hibernation@2313

@orpc/json-schema

npm i https://pkg.pr.new/@orpc/json-schema@2313

@orpc/experimental-lock

npm i https://pkg.pr.new/@orpc/experimental-lock@2313

@orpc/mcp

npm i https://pkg.pr.new/@orpc/mcp@2313

@orpc/msw

npm i https://pkg.pr.new/@orpc/msw@2313

@orpc/nest

npm i https://pkg.pr.new/@orpc/nest@2313

@orpc/next

npm i https://pkg.pr.new/@orpc/next@2313

@orpc/node

npm i https://pkg.pr.new/@orpc/node@2313

@orpc/openapi

npm i https://pkg.pr.new/@orpc/openapi@2313

@orpc/opentelemetry

npm i https://pkg.pr.new/@orpc/opentelemetry@2313

@orpc/pinia-colada

npm i https://pkg.pr.new/@orpc/pinia-colada@2313

@orpc/pino

npm i https://pkg.pr.new/@orpc/pino@2313

@orpc/publisher

npm i https://pkg.pr.new/@orpc/publisher@2313

@orpc/ratelimit

npm i https://pkg.pr.new/@orpc/ratelimit@2313

@orpc/server

npm i https://pkg.pr.new/@orpc/server@2313

@orpc/shared

npm i https://pkg.pr.new/@orpc/shared@2313

@orpc/swr

npm i https://pkg.pr.new/@orpc/swr@2313

@orpc/tanstack-query

npm i https://pkg.pr.new/@orpc/tanstack-query@2313

@orpc/trpc

npm i https://pkg.pr.new/@orpc/trpc@2313

@orpc/valibot

npm i https://pkg.pr.new/@orpc/valibot@2313

@orpc/zod

npm i https://pkg.pr.new/@orpc/zod@2313

commit: 3a1d7e6

@codspeed

codspeed Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

1 warning

⚠️ 5 benchmarks are dominated by system calls

System calls cannot be simulated consistently and are left out of the measure. The reported value understates the real cost. Switch to the Walltime instrument to measure them.

Learn more about system calls

See affected benchmarks

✅ 28 untouched benchmarks
⏩ 2 skipped benchmarks1


Comparing claude/project-thread-3of956 (3a1d7e6) with main (4c6b6b3)

Open in CodSpeed

Footnotes

  1. 2 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

ℹ️ No critical issues — one minor suggestion inline.

Reviewed changes

This run reviewed the config-only SEO / agents changes across 4 files in apps/content:

  • blume.config.ts — adds seo.organization (middleapi, with X and Open Collective sameAs), seo.software (license, OS, price: 0, GitHub + npm sameAs), and an agents.llmsTxt.details block.
  • pages/index.astro — drops the hand-written WebSite + SoftwareApplication graph, relying on PageLayout's built-in structured data.
  • pages/blog/[...slug].astro, pages/blog/index.astro — set structuredDataEnabled={false} so PageLayout stops emitting a duplicate TechArticle.

I checked each against the installed Blume 2.2.3: the config keys and their defaults exist in schema.ts, buildStructuredData emits the Organization on every page and the SoftwareApplication on the homepage (price: 0 correctly survives the !== undefined check and still yields the same Offer), and PageLayout's default keeps the homepage graph on. The llms.txt links resolve to real routes and the install command matches getting-started.mdx. Nothing blocking.

Pullfrog  | Fix all ➔ | Fix 👍s ➔ | View workflow run | Using deepseek-v4.1-flash (free via Pullfrog for OSS) | 𝕏

Comment thread apps/content/pages/blog/[...slug].astro
…-3of956

# Conflicts:
#	apps/content/pages/blog/index.astro
@dinwwwh
dinwwwh merged commit fd8c4a5 into main Oct 23, 2026
14 checks passed
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.

2 participants