Sitelet https://github.com/Codeholics/codeholics/pull/13
Skip to content

Astrodev - #13

Merged
jessecooper merged 39 commits into
devfrom
astrodev
Oct 2, 2026
Merged

jessecooper merged 39 commits into
devfrom
astrodev

Conversation

@jessecooper

Copy link
Copy Markdown
Contributor

New astro site ready to be moved into dev

jessecooper and others added 30 commits September 11, 2026 13:09
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Styled Header.astro: full-width centered nav, improved spacing, Pelican-inspired styling
- Added Playwright tests: astro/tests/navbar.spec.ts (desktop + mobile)
- Verified e2e suite passes

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Document how to run the migrated Astro site (dev, build, preview) and Playwright e2e tests.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Implement the archived retarget-navbar-links OpenSpec change by replacing the old structural navbar links with a shared topic-based navigation model in Header.appbar.astro. Both desktop and mobile menus now render from the same primaryNavItems source, preserving the ~/ home link while routing Coding, SysAdmin, InfoSec, OS, Hardware, and Reviews to their existing tag pages.

Also archive the completed OpenSpec changes and sync the ui/site-navigation main spec with the new navigation requirements so the planning history and durable spec tree stay aligned.
Implement the archived add-navbar-social-links OpenSpec change by adding shared social link metadata and rendering icon-only X, Facebook, Github, and RSS links in both the desktop header and the mobile navigation panel. The Astro navbar now uses the simple-icons package with the legacy Pelican social URLs while preserving the existing topic links and utility controls.

Also archive the completed OpenSpec change and sync the ui/site-navigation main spec so the durable navigation requirements include the new desktop and mobile social-link group.
Implement the archived add-astro-rss-feed OpenSpec change by adding @astrojs/rss, configuring the Astro site URL, generating /rss.xml from published post data, and reusing new excerpt helpers in src/lib/posts.ts for feed-safe descriptions. The navbar RSS social link now targets the local feed instead of the legacy Pelican endpoint.

This also adds Playwright coverage for the RSS endpoint and navbar RSS links, syncs the content/rss-feed and ui/site-navigation main specs, archives the completed OpenSpec change artifacts, and includes the project-local search icon update that replaced the old search glyph with an inline SVG in the Astro header.
Enable build-time Mermaid diagram rendering in the Astro site by adding `rehype-mermaid` (before pretty-code), preserving `mermaid` as a supported fence language, and documenting the required Playwright Chromium install in the Astro README. This also adds new published posts (including Mermaid-authored content) and records spec work by archiving the Mermaid change set while introducing a new OpenSpec proposal/design/tasks/spec delta for GitHub-style Markdown alerts.
Copilot AI balanced review requested due to automatic review settings October 1, 2026 14:53

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🔵 Needs a closer look

It is a large platform migration (an entire new Astro app plus Docker build and deploy implications) that warrants human review, and it includes a Docker port mismatch and a committed test artifact that should be addressed first.

Review effort: Balanced
Findings: 1 Medium severity · 1 Low severity

Open (2)
What changed in this PR

This PR introduces a brand-new Astro application under astro/ as part of migrating the Codeholics site from Pelican to Astro, so it can be promoted to the dev branch. It adds the Astro source (pages, components, content collections, RSS feed, data layer, SCSS/theme assets), supporting config (tsconfig, PostCSS, site config, asset-url helper), a Docker build for the new app, Playwright tests, and OpenSpec change-tracking metadata.

Changes:

  • New Astro site: pages (about, posts/index, rss.xml.js), components (PostCard, Footer, icons), content collection schema, and migrated post content (incl. MDX YouTube embeds).
  • New build/runtime support: site.config.mjs, asset-url.ts, postcss.config.cjs, tsconfig.json, Dockerized Astro build, and vendored Bootstrap SCSS theme assets.
  • OpenSpec archive/active change metadata (.openspec.yaml) documenting the migration history.
File Description
docker/​docker-compose.yaml Builds the new Astro Dockerfile; port mapping targets 80 but the server listens on 4321.
astro/​.gitignore Ignores build outputs but not Playwright test-results/, leading to a committed artifact.
astro/​test-results/​.last-run.json Generated Playwright run artifact committed to the repo.
astro/​postcss.config.cjs Adds @tailwindcss/postcss + autoprefixer, redundant with @tailwindcss/vite.
astro/​src/​pages/​rss.xml.js Builds RSS feed from loadPosts() using SITE_URL.
astro/​src/​pages/​posts/​index.astro Lists all posts via PostCard.
astro/​src/​pages/​about.astro Static About page.
astro/​src/​lib/​asset-url.ts Dev-only asset origin rewriting helper.
astro/​site.config.mjs Validates/normalizes SITE_URL.
astro/​src/​content.config.ts Posts collection schema (title/date required).
astro/​src/​components/​PostCard.astro, Footer.astro, icons/​*.svg Presentational components and inline SVG icons.
astro/​src/​content/​posts/​*.mdx Migrated video posts embedding astro-embed YouTube.
astro/​tsconfig.json Standard Astro strict tsconfig.
astro/​public/​theme/​scss/​** Vendored Bootstrap SCSS mixins/helpers.
openspec/​**/​.openspec.yaml OpenSpec change metadata.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread astro/postcss.config.cjs
Comment thread astro/.gitignore
@jessecooper
jessecooper merged commit 55fcf03 into dev Oct 2, 2026
1 check passed
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.

3 participants