mirror of
https://github.com/waynesutton/markdown-site.git
synced 2026-01-12 04:09:14 +00:00
SEO improvements for better search engine optimization: 1. Canonical URL - Added client-side dynamic canonical link tags for posts and pages 2. Single H1 per page - Markdown H1s demoted to H2 with .blog-h1-demoted class (maintains H1 visual styling) 3. DOM order fix - Article now loads before sidebar in DOM for SEO (CSS order property maintains visual layout) 4. X-Robots-Tag - HTTP header added via netlify.toml (index, follow for public; noindex for dashboard/api routes) 5. Hreflang tags - Self-referencing hreflang (en, x-default) for language targeting 6. og:url consistency - Uses same canonicalUrl variable as canonical link tag 7. twitter:site - New TwitterConfig in siteConfig.ts for Twitter Cards meta tags Files modified: - src/config/siteConfig.ts: Added TwitterConfig interface with site/creator fields - src/pages/Post.tsx: SEO meta tags for posts/pages, DOM order optimization - src/components/BlogPost.tsx: H1 to H2 demotion in markdown renderer - src/styles/global.css: .blog-h1-demoted class, CSS order properties - convex/http.ts: hreflang and twitter:site in generateMetaHtml() - netlify.toml: X-Robots-Tag headers for public, dashboard, API routes - index.html: canonical, hreflang, twitter:site placeholder tags - fork-config.json.example: twitter configuration fields Closes #4 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
113 lines
4.3 KiB
HTML
113 lines
4.3 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
|
|
<!-- Preconnect for faster API calls -->
|
|
<link rel="preconnect" href="https://convex.cloud" crossorigin />
|
|
<link rel="dns-prefetch" href="https://convex.cloud" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
|
|
<!-- SEO Meta Tags -->
|
|
<meta
|
|
name="description"
|
|
content="An open-source publishing framework built for AI agents and developers to ship websites, docs, or blogs. Write markdown, sync from the terminal. Your content is instantly available to browsers, LLMs, and AI agents. Built on Convex and Netlify."
|
|
/>
|
|
<meta name="author" content="markdown sync publishing framework" />
|
|
<meta
|
|
name="keywords"
|
|
content="markdown site, Convex, Netlify, React, TypeScript, open source, real-time, sync"
|
|
/>
|
|
<meta name="robots" content="index, follow" />
|
|
|
|
<!-- Canonical URL -->
|
|
<link rel="canonical" href="https://www.markdown.fast/" />
|
|
|
|
<!-- Hreflang for language/region targeting -->
|
|
<link rel="alternate" hreflang="en" href="https://www.markdown.fast/" />
|
|
<link rel="alternate" hreflang="x-default" href="https://www.markdown.fast/" />
|
|
|
|
<!-- Theme -->
|
|
<meta name="theme-color" content="#faf8f5" />
|
|
|
|
<!-- Open Graph -->
|
|
<meta property="og:title" content="markdown sync publishing framework" />
|
|
<meta
|
|
property="og:description"
|
|
content="An open-source publishing framework built for AI agents and developers to ship websites, docs, or blogs. Write markdown, sync from the terminal. Your content is instantly available to browsers, LLMs, and AI agents. Built on Convex and Netlify."
|
|
/>
|
|
<meta property="og:type" content="website" />
|
|
<meta property="og:url" content="https://www.markdown.fast/" />
|
|
<meta
|
|
property="og:site_name"
|
|
content="markdown sync publishing framework"
|
|
/>
|
|
<meta
|
|
property="og:image"
|
|
content="https://www.markdown.fast/images/og-default.png"
|
|
/>
|
|
|
|
<!-- Twitter Card -->
|
|
<meta name="twitter:card" content="summary_large_image" />
|
|
<meta property="twitter:domain" content="www.markdown.fast" />
|
|
<meta property="twitter:url" content="https://www.markdown.fast/" />
|
|
<meta name="twitter:title" content="markdown sync publishing framework" />
|
|
<meta
|
|
name="twitter:description"
|
|
content="An open-source publishing framework built for AI agents and developers to ship websites, docs, or blogs. Write markdown, sync from the terminal. Your content is instantly available to browsers, LLMs, and AI agents. Built on Convex and Netlify."
|
|
/>
|
|
<meta
|
|
name="twitter:image"
|
|
content="https://www.markdown.fast/images/og-default.png"
|
|
/>
|
|
<!-- twitter:site - configure in siteConfig.ts for your Twitter handle -->
|
|
<meta name="twitter:site" content="" />
|
|
<meta name="twitter:creator" content="" />
|
|
|
|
<!-- RSS Feeds -->
|
|
<link
|
|
rel="alternate"
|
|
type="application/rss+xml"
|
|
title="RSS Feed"
|
|
href="/rss.xml"
|
|
/>
|
|
<link
|
|
rel="alternate"
|
|
type="application/rss+xml"
|
|
title="RSS Feed (Full Content)"
|
|
href="/rss-full.xml"
|
|
/>
|
|
|
|
<!-- LLM and AI Discovery -->
|
|
<link rel="author" href="/llms.txt" />
|
|
|
|
<!-- JSON-LD Structured Data for Homepage -->
|
|
<script type="application/ld+json">
|
|
{
|
|
"@context": "https://schema.org",
|
|
"@type": "WebSite",
|
|
"name": "markdown sync framework",
|
|
"url": "https://www.markdown.fast",
|
|
"description": "An open-source publishing framework built for AI agents and developers to ship websites, docs, or blogs. Write markdown, sync from the terminal. Your content is instantly available to browsers, LLMs, and AI agents. Built on Convex and Netlify.",
|
|
"author": {
|
|
"@type": "Organization",
|
|
"name": "markdown sync framework",
|
|
"url": "https://www.markdown.fast"
|
|
},
|
|
"potentialAction": {
|
|
"@type": "SearchAction",
|
|
"target": "https://www.markdown.fast/?q={search_term_string}",
|
|
"query-input": "required name=search_term_string"
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<title>markdown "sync" framework</title>
|
|
</head>
|
|
<body>
|
|
<div id="root"></div>
|
|
<script type="module" src="/src/main.tsx"></script>
|
|
</body>
|
|
</html>
|