Skip to content

Add shared JSON-LD and bilingual about pages - #58

Merged
bubbleptr merged 1 commit into
mainfrom
cursor/structured-data-eeat-bbf6
Oct 14, 2026
Merged

bubbleptr merged 1 commit into
mainfrom
cursor/structured-data-eeat-bbf6

Conversation

@bubbleptr

Copy link
Copy Markdown
Owner

Summary

Pi Index pages now share one JSON-LD @graph (Organization Pi Index, Person Kieran, WebSite) and the site has public about and methodology pages in English and Chinese.

  • Publisher is Pi Index (https://piindex.dev, logo /favicon.svg, sameAs https://github.com/bubbleptr/awesome-pi). Contact is the GitHub issues URL. There is no email.
  • Maintainer is Kieran, sameAs https://github.com/bubbleptr and https://x.com/ninthbit_ai. GitHub user bubbleptr has display name Kieran, and that profile's twitter_username is ninthbit_ai.
  • Directory search really does read ?q= on load, so the WebSite node includes a SearchAction for https://piindex.dev/?q={search_term_string}.
  • Home, category, and topic pages are CollectionPages whose ItemList is the items on that page, with BreadcrumbList and dateModified from the stats snapshot (home) or the review/compiled dates already in the guides.
  • Package guides are TechArticles. The headline has no | Pi Index suffix. Author is Kieran, publisher is Pi Index, and about is the upstream SoftwareSourceCode (repository, version, GitHub owner). No ratings or prices.
  • Talks index is an ItemList. Each talk VideoObject has name, description, thumbnail, upload date, duration, and contentUrl (plus embedUrl when a YouTube id exists).
  • New pages: /about/, /zh/about/, /methodology/, /zh/methodology/. Footer links and guide bylines (By Kieran 路 Reviewed <date>, name links to about) point at them. Sitemap hreflang pairs match the existing pages.
  • pi-durabletask-mcp was listed twice on main (MCP Adapter and Built on Pi Durable) with the same name and URL, which the catalog rejects. The MCP Adapter entry stays. The durable section now points at it the same way it already points at pi-fabric and webfox. Its package.json depends on @earendil-works/pi-durable.

bun run validate passed (unit tests, astro check, production build, rendered tests).

Sample JSON-LD

https://piindex.dev/packages/pi-web-access/ (built HTML, shared site nodes shortened):

{
  "@context": "https://schema.org",
  "@graph": [
    { "@type": "Organization", "@id": "https://piindex.dev/#organization", "name": "Pi Index", "url": "https://piindex.dev/", "sameAs": ["https://github.com/bubbleptr/awesome-pi"] },
    { "@type": "Person", "@id": "https://piindex.dev/#kieran", "name": "Kieran", "url": "https://piindex.dev/about/", "sameAs": ["https://github.com/bubbleptr", "https://x.com/ninthbit_ai"] },
    { "@type": "WebSite", "@id": "https://piindex.dev/#website", "publisher": { "@id": "https://piindex.dev/#organization" }, "potentialAction": { "@type": "SearchAction", "target": { "@type": "EntryPoint", "urlTemplate": "https://piindex.dev/?q={search_term_string}" }, "query-input": "required name=search_term_string" } },
    {
      "@type": "TechArticle",
      "@id": "https://piindex.dev/packages/pi-web-access/#webpage",
      "headline": "pi-web-access: Install, Search Fallbacks, PDF & YouTube",
      "datePublished": "2026-09-21",
      "dateModified": "2026-09-21",
      "image": "https://piindex.dev/og-image-v4.png",
      "author": { "@id": "https://piindex.dev/#kieran" },
      "publisher": { "@id": "https://piindex.dev/#organization" },
      "about": { "@id": "https://piindex.dev/packages/pi-web-access/#software" }
    },
    {
      "@type": "SoftwareSourceCode",
      "@id": "https://piindex.dev/packages/pi-web-access/#software",
      "name": "pi-web-access",
      "codeRepository": "https://github.com/nicobailon/pi-web-access",
      "version": "v0.30.0",
      "author": { "@type": "Person", "name": "nicobailon", "url": "https://github.com/nicobailon" }
    }
  ]
}

Other built pages, parsed as JSON:

Page Types Dates / list
/ Organization, Person, WebSite, BreadcrumbList, ItemList, CollectionPage dateModified 2026-10-12T09:16:23.459Z (stats snapshot). ItemList of 178 resources on the page.
/topics/pi-durable/ CollectionPage + ItemList dateModified 2026-10-07. 9 items. Headline has no | Pi Index suffix.
/topics/jev/ CollectionPage dateModified 2026-09-22
/talks/ CollectionPage + ItemList 5 talks
/talks/agent-frustrations/ VideoObject name, description, thumbnailUrl, uploadDate 2026-09-20T13:59:29Z, duration PT374S, contentUrl
/about/, /zh/about/ AboutPage publisher Organization, main entity Kieran
/methodology/, /zh/methodology/ WebPage publisher Organization

Sitemap entries for the four new URLs include hreflang="en" and hreflang="zh-CN" alternates, same as the existing pages.

Needs a look from Kieran

  • pi-durabletask-mcp placement. Confirm keeping it only under MCP Adapter, with a cross-reference in Built on Pi Durable, is the listing you want. Main could not build with both rows.
  • X profile. https://x.com/ninthbit_ai is on the GitHub profile, and a direct fetch of x.com returned 403, so the public page was not opened. Say if that URL should not be in sameAs.
  • Logo. The only mark in the repo is favicon.svg (64脳64). A larger raster would be needed if you later want Google's logo rich result.

About page in English
Chinese methodology page
Package guide byline
about-methodology-and-guide-byline.mp4

To show artifacts inline, enable in settings.

Open in Web聽Open in Cursor聽

Link Pi Index, Kieran, and the site from directory, guide, and talk pages, and publish bilingual about and methodology pages. Keep pi-durabletask-mcp in MCP Adapter only so the same repository is not listed under two kinds.

Co-authored-by: Kieran <bubbleptr@users.noreply.github.com>
@bubbleptr
bubbleptr merged commit 6ee54d0 into main Oct 14, 2026
1 check failed
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