diff --git a/public/robots.txt b/public/robots.txt new file mode 100644 index 00000000..fb03efdc --- /dev/null +++ b/public/robots.txt @@ -0,0 +1,28 @@ +User-agent: * +Allow: / + +User-agent: GPTBot +Allow: / + +User-agent: OAI-SearchBot +Allow: / + +User-agent: ChatGPT-User +Allow: / + +User-agent: PerplexityBot +Allow: / + +User-agent: ClaudeBot +Allow: / + +User-agent: Claude-User +Allow: / + +User-agent: Google-Extended +Allow: / + +User-agent: Applebot +Allow: / + +Sitemap: https://docs.tempo.xyz/sitemap.xml diff --git a/src/components/DocsJsonLd.tsx b/src/components/DocsJsonLd.tsx new file mode 100644 index 00000000..e05a701b --- /dev/null +++ b/src/components/DocsJsonLd.tsx @@ -0,0 +1,68 @@ +const tempoSameAs = [ + 'https://x.com/tempo', + 'https://twitter.com/tempo', + 'https://github.com/tempoxyz', + 'https://www.linkedin.com/company/tempoxyz', + 'https://www.crunchbase.com/organization/tempo-87e4', +] + +const tempoKnowsAbout = [ + 'stablecoin payments', + 'cross-border payments', + 'global payouts', + 'agentic payments', + 'machine payments', + 'enterprise settlement', + 'payment blockchains', + 'Layer 1 blockchain', + 'stablecoin infrastructure', +] + +const description = + 'Tempo is a payments-first Layer 1 blockchain incubated by Stripe and Paradigm. Tempo documentation covers stablecoin payments, global payouts, agentic payments, APIs, wallets, and protocol specifications.' + +export default function DocsJsonLd(props: { path?: string }) { + const path = props.path || '/docs' + const pathname = path.startsWith('/') ? path : `/${path}` + const url = `https://docs.tempo.xyz${pathname}` + const schema = { + '@context': 'https://schema.org', + '@graph': [ + { + '@type': 'Organization', + '@id': 'https://tempo.xyz/#organization', + name: 'Tempo', + url: 'https://tempo.xyz', + description, + sameAs: tempoSameAs, + knowsAbout: tempoKnowsAbout, + }, + { + '@type': 'WebSite', + '@id': 'https://docs.tempo.xyz/#website', + name: 'Tempo Docs', + url: 'https://docs.tempo.xyz', + description, + publisher: { '@id': 'https://tempo.xyz/#organization' }, + }, + { + '@type': 'TechArticle', + '@id': url, + url, + headline: 'Tempo documentation', + description, + isPartOf: { '@id': 'https://docs.tempo.xyz/#website' }, + about: { '@id': 'https://tempo.xyz/#organization' }, + publisher: { '@id': 'https://tempo.xyz/#organization' }, + }, + ], + } + + return ( +