Add 'Edit this page on GitHub' footer link and repo cleanup#4
Add 'Edit this page on GitHub' footer link and repo cleanup#4JacobCoffee merged 4 commits intomainfrom
Conversation
- Add edit-on-GitHub link to footer for all pages (posts, tags, authors, blog list, etc.) - Add GitHub "Source" link in footer bottom bar - Update all references from jacobcoffee/psf-blog to psf/blog - Update blogger redirect template to point to blog.pyfound.org - Remove "since 2011" from homepage editorial strip - Update README to reflect PSF branding Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
This pull request enhances the blog with GitHub integration features and completes the repository migration from jacobcoffee/psf-blog to psf/blog. It adds "Edit this page on GitHub" links to all page types and updates all references to the new repository location.
Changes:
- Adds "Edit this page on GitHub" footer link to all page types (posts, tags, authors, blog list, year archives, homepage)
- Adds "Source" link to GitHub repository in the footer copyright bar
- Updates all repository references from
jacobcoffee/psf-blogtopsf/blogandblog.pyfound.org - Removes "since 2011" from the homepage editorial strip
- Updates README branding to "PSF Blog"
- Uses gray hover colors for meta links (edit/source) instead of green
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| src/layouts/BaseLayout.astro | Adds optional editPath prop and passes it to Footer component |
| src/components/Footer.astro | Implements "Edit this page on GitHub" link section and "Source" link with gray hover styling |
| src/pages/tags/index.astro | Adds editPath pointing to source template file |
| src/pages/tags/[tag].astro | Adds editPath pointing to source template file |
| src/pages/index.astro | Adds editPath and removes "since 2011" text from editorial strip |
| src/pages/blog/year/[year].astro | Adds editPath pointing to source template file |
| src/pages/blog/index.astro | Adds editPath pointing to source template file |
| src/pages/blog/[page].astro | Adds editPath pointing to source template file |
| src/pages/authors/index.astro | Adds editPath pointing to source template file |
| src/pages/authors/[author].astro | Adds editPath pointing to author JSON file |
| src/layouts/BlogPostLayout.astro | Adds editPath pointing to post markdown file |
| scripts/blogger-redirect-template.xml | Updates all references from jacobcoffee repo to blog.pyfound.org |
| keystatic.config.tsx | Updates cloud project from jacobcoffee/psf-blog to psf/blog |
| README.md | Updates title to "PSF Blog" and description, removes trailing whitespace |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Runs against built site preview, checks WCAG color contrast and overall accessibility score (minimum 0.9). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Enforces heading hierarchy (MD001), image alt text (MD045), and no empty links (MD042) on blog posts. Pre-existing violations in migrated Blogger posts are listed in .markdownlintignore. Also lowers Lighthouse color-contrast to warn (pre-existing) and sets a11y floor to 0.85. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 19 out of 19 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| <svg class="h-3.5 w-3.5" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"> | ||
| <path stroke-linecap="round" stroke-linejoin="round" d="M15.232 5.232l3.536 3.536m-2.036-5.036a2.5 2.5 0 113.536 3.536L6.5 21.036H3v-3.572L16.732 3.732z" /> | ||
| </svg> |
There was a problem hiding this comment.
The pencil SVG in the new “Edit this page on GitHub” link is decorative (the link has visible text) but it lacks aria-hidden="true" (and typically focusable="false"). Without this, some screen readers may announce it as an extra graphic. Mark the SVG as decorative to improve accessibility.
| <svg class="h-3.5 w-3.5" viewBox="0 0 24 24" fill="currentColor"><path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z"/></svg> | ||
| Source |
There was a problem hiding this comment.
The GitHub mark SVG in the new “Source” link is decorative (the link has text) but it lacks aria-hidden="true" (and typically focusable="false"). Adding these avoids unnecessary/duplicate announcements by assistive tech.
| "ci": { | ||
| "collect": { | ||
| "startServerCommand": "bun run preview", | ||
| "startServerReadyPattern": "Host:", |
There was a problem hiding this comment.
startServerReadyPattern is set to "Host:", but astro preview typically logs readiness with Local: / Network: (or similar). If the pattern doesn’t match, Lighthouse CI may hang waiting for the server. Consider using a regex that matches the actual preview output (e.g. Local: or http://localhost).
| "startServerReadyPattern": "Host:", | |
| "startServerReadyPattern": "Local:", |
|
|
||
| const REPO_URL = "https://github.com/psf/blog"; | ||
| const { editPath } = Astro.props; | ||
| const editUrl = editPath ? `${REPO_URL}/edit/main/${editPath}` : null; |
There was a problem hiding this comment.
editPath is interpolated directly into editUrl. Some of the provided paths contain characters that should be URL-encoded (e.g. src/pages/tags/[tag].astro), which can produce an invalid/fragile GitHub URL. Build editUrl using encodeURI(editPath) (or otherwise escape the path segments) before concatenation.
| const editUrl = editPath ? `${REPO_URL}/edit/main/${editPath}` : null; | |
| const editUrl = editPath ? `${REPO_URL}/edit/main/${encodeURI(editPath)}` : null; |
Uh oh!
There was an error while loading. Please reload this page.