Open
Conversation
Implements F1 + F3 of the blog plan: - Blog index at /blog and posts at /blog/[slug] - Astro Content Collection with frontmatter schema (title, description, pubDate, tags, heroImage, draft, showToc, canonicalURL, originalSource) - BlogPost layout with reading time, optional TOC, JSON-LD Article schema - Shiki syntax highlighting (github-light theme) - Layout.astro extended with description, ogImage, canonical, noindex props - Blog link in header nav - RSS feed at /rss.xml (excludes drafts) - Sitemap via @astrojs/sitemap - robots.txt with /blog/_draft/ disallow (prepared for F4) - 404 page - Sample hello-world post
Posts with `draft: true` build to `/blog/draft/[slug]/`, gated by a Netlify Edge Function that requires HTTP Basic Auth (DRAFT_USER / DRAFT_PASSWORD env vars). Drafts ship with `noindex`, no canonical, and no Article JSON-LD; they are also excluded from `/blog/`, RSS, and the sitemap. https://claude.ai/code/session_01CafRDp1qQmXdtNqxURkWnE
✅ Deploy Preview for javirubio ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a complete blog system to the site with support for published posts, draft previews, RSS feeds, and comprehensive SEO metadata. Includes a Netlify Edge Function for basic auth protection of draft content.
Key Changes
src/content/blog/with Astro Content Collections schema supporting title, description, publication date, tags, hero images, draft status, and canonical URLs/blog/index listing published posts sorted by date/blog/[slug]/for published posts with full article layout/blog/draft/[slug]/for draft previews (auth-gated)src/layouts/BlogPost.astrowith support for:/rss.xmlendpoint that excludes drafts and includes post metadatanetlify/edge-functions/draft-auth.jsrequiring HTTP Basic Auth for/blog/draft/*paths (credentials from env vars)noindexmeta tag for draftsrobots.txtdisallowing/blog/draft/Implementation Details
github-lightShiki theme with line wrapping enabledhttps://javirubio.netas canonical site URLhttps://claude.ai/code/session_01CafRDp1qQmXdtNqxURkWnE