feat: add Astro showcase site for GitHub Pages#27
Open
thomast1906 wants to merge 29 commits intomainfrom
Open
Conversation
- Full static site built with Astro 4.x + Content Collections - 19 static HTML pages: homepage, skills catalog, 14 skill detail pages, agents, packages, getting-started - 25 Markdown content files (14 skills, 4 agents, 3 packages, 4 MCP servers) - Zod schemas for all 4 content collections (src/content.config.ts) - 15 components: cards, sections, layout, UI primitives - Dark GitHub-inspired theme with CSS custom properties - GitHub Actions workflow: builds on squad/**, deploys to Pages on main - CONTRIBUTING.md: copy-paste templates for adding new skills/agents/packages - .gitignore: excludes node_modules, dist, .astro, .env* Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Astro reserves the 'setup' key in .md frontmatter for the legacy MDX component import syntax. Renaming to 'installation' clears the WARN and the resulting build cancellation in CI. Changes: - src/content/mcp-servers/*.md: setup -> installation - src/content.config.ts: schema field rename - src/components/sections/MCPServerCard.astro: data access update - src/pages/skills/[slug].astro: data access update - CONTRIBUTING.md: template + description updated Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
These steps require GitHub Pages to be enabled in repo settings. On squad/** branches we only need the build to pass — no Pages configuration or artifact upload required. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
feat: add complete Astro showcase site for GitHub Pages
Skills, Agents, and Packages counts are now driven by the actual number of .md files in each content collection. Adding a new skill, agent, or package file auto-updates the hero counter on next build. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Configure-pages, upload-artifact, and the deploy job now only run on pushes to main. The build step still runs on all branches (including feat/** and squad/**) so CI validates the site on every push. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…, nav link, local dev docs - Add /agents/[slug].astro detail page showing skills, packages and GitHub source link - Add /packages/[slug].astro detail page with install command, agents, skills, MCP requirements - Add /mcp-servers/ browse page using existing MCPServerCard component - Wire AgentCard to link to internal detail page (GitHub source as secondary link) - Add MCP Servers nav link to Header - Fix featuredPackages: homepage now uses filtered list instead of all packages - Add PR build validation workflow (.github/workflows/validate-site.yml) - Add local dev instructions to CONTRIBUTING.md - Build verified: 27 pages generated cleanly Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…nt collections - Move Astro site into docs/ subdirectory for clean repo root - Upgrade Astro 4 → 6.1.6 (latest) - Remove duplicate src/content/ — skills, agents, packages now read directly from .github/skills/, .github/agents/, packages/ via custom Content Layer loaders (gray-matter + yaml) - Add docs/src/site.config.ts for presentation-only overlay data and MCP server definitions (replacing mcp-servers content collection) - Rewrite docs/src/content.config.ts with three custom loaders - Update entry.slug → entry.id throughout (Astro 5+ Content Layer API) - Update cards/pages: use data.description instead of entry.body - MCPServerCard now accepts McpServer type from site.config - Update GitHub Actions workflows to run from docs/ subdirectory - Update .gitignore for docs/node_modules, docs/dist, docs/.astro Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Replace raw Copilot spec rendering on skill pages with useful human-readable content:
description, invoke-hint box, example prompts, and a GitHub source link
- Add argument-hint and examples frontmatter to all 14 SKILL.md files
- Add examples frontmatter to all 4 .agent.md files
- Fix MCP ID matching bug: site.config.ts and content.config.ts now use server IDs
('azure-mcp', 'drawio-mcp') instead of display names ('Azure MCP', 'Draw.io MCP')
- Fix azure-architect agentMeta: remove cost-optimization (not in packages/architect/apm.yml)
- Show example prompts and tool pill-tags on agent detail pages
- Improve Getting Started page: add try-it-out examples for all 3 packages
- Add CSS for new examples/tools sections on agent pages
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- All 14 SKILL.md: remove argument-hint, move examples to metadata.examples - All 4 .agent.md: move examples to metadata.examples (new metadata block) - content.config.ts: read examples from data.metadata.examples, drop argumentHint field+schema - skills/[slug].astro: remove invoke-hint block (HTML + CSS) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Previous script failed silently for skills without an existing metadata block. Recovered examples from git history and added metadata.examples to all 8 affected skills. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Each example now includes real service names, concrete numbers, specific constraints, and actionable context rather than generic one-liners. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add category, status, featured, mcp to all 14 SKILL.md metadata blocks - Add skills list to all 4 .agent.md metadata blocks - Remove skillMeta and agentMeta from site.config.ts (no more manual config maintenance) - content.config.ts reads all fields directly from source frontmatter - Add azureServices, version, lastUpdated optional fields to skills Zod schema - skills/[slug].astro: surface azure-services tags, version and last-updated in header - agents/[slug].astro: add @agent-id invocation box; derive relatedPackages dynamically Adding a new skill/agent no longer requires updating site.config.ts. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add .default([]) to azureServices Zod schema to prevent runtime crash when Astro content cache lacks the field (e.g. apm-package-author) - Add featured: true/false directly to each packages/*/apm.yml - Remove PackageMeta/packageMeta from site.config.ts - Remove packageMeta import from content.config.ts - Packages are now fully dynamic — no manual config on add Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… link - Add /contributing page: skill, agent, package frontmatter specs with field tables, numbered steps, guidelines, and local dev instructions - Complete getting-started CSS: recommended-badge, divider-label, steps-list, packages-preview, packages-grid now have full styles - Add 'Contributing' link to header nav (with aria-current active state) - Build: 28 pages, 0 errors Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…workflow permissions fix - Add custom 404 page with home/skills/getting-started links - Add @astrojs/sitemap integration (sitemap-index.xml generated) - Add mcpJson field to McpServer interface and all 4 server configs - MCPServerCard now shows copyable .vscode/mcp.json config block - Skill detail page quick-install row: CSS + copy-to-clipboard script - Fix hardcoded skill count in skills/index.astro (now dynamic) - Add Contributing link to Footer resources section - Fix validate-site.yml missing GITHUB_TOKEN permissions block Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- SkillCard, AgentCard, PackageCard: -webkit-line-clamp: 2 on descriptions - CodeBlock: overflow-x: auto on pre so long install commands don't blow out cards - PackageCard + packages grid: min-width: 0 to prevent grid cell blowout - Reduce packages grid minmax from 320px to 280px for tighter fit Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…-col layout - SkillCard: category chip with icon+color, 3-line description, up to 2 example prompt chips on the card, azure services tags in footer, cat-color accent top border that changes on hover, 'View skill →' hint revealed on hover - AgentCard: robot icon, skill count badge, 3-line description, no raw skill IDs, accent top border, 'View agent →' hover hint - skills/index.astro: 2-column grid (was 3-column at 1024px) - agents/index.astro: 2-column grid (was 4-column at 1024px) - categories.ts: icon emojis per category (committed alongside card changes) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Skills → /skills/, Agents → /agents/, Packages → /packages/, MCP Integrations → /getting-started/#mcp-setup Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…n, grid layouts - agents/[slug].astro: add missing baseUrl fallback (was undefined on some envs) - index.astro: fix #mcp-setup anchor → #mcp (matches actual section id) - content.config.ts: add .default(false) to skills.featured; add .default([]) to agents tools/examples/skills fields - PackageCard.astro: full redesign — clickable link to /packages/[slug]/, counts (N agents · N skills) instead of raw IDs, accent top border, hover hint - packages/index.astro: grid 3-col → 2-col at desktop - packages/[slug].astro: skills grid 3-col → 2-col at desktop Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ts schema Mirror the SKILL.md/agent.md structure where category, status, featured, mcp, examples, azureServices, version, lastUpdated are nested under a metadata: block in the YAML front-matter. Skills schema: examples, category, status, featured, mcp, azureServices, version, lastUpdated moved from skill.data.* to skill.data.metadata.* Agents schema: examples and skills moved from agent.data.* to agent.data.metadata.* Updated all consumers: - content.config.ts loader + z.object schema - pages/index.astro (featured filter) - pages/skills/[slug].astro (mcp, examples, azureServices, status, category, version, lastUpdated) - pages/agents/[slug].astro (skills, examples) - components/cards/SkillCard.astro (category, examples, azureServices, status) - components/cards/AgentCard.astro (skills count) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…nav reorder - Fix ViewTransitions → ClientRouter (Astro 6 rename, import from astro:transitions) - Wrap hamburger menu and copy button scripts in astro:page-load listener - Create SearchModal.astro with Pagefind UI dialog (lazy-loaded JS/CSS, Cmd/Ctrl+K shortcut) - Add search button to Header nav - Add GitHub star button with live count fetched from API (localStorage cache, 5-min TTL) - Reorder nav: Getting Started first, then Skills, Agents, Packages, MCP Servers, Contributing - Install @astrojs/check, typescript, pagefind devDeps; update build script Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… moderate) yaml 2.0.0-2.8.2 is vulnerable to stack overflow via deeply nested YAML (GHSA-48c2-rrv3-qjmp). The chain is @astrojs/language-server -> volar-service-yaml -> yaml-language-server -> yaml@<2.8.3. npm audit fix cannot resolve this automatically, so an overrides block forces yaml-language-server to use yaml@^2.8.3 (the patched version). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…UI bugs - Render full SKILL.md / agent .md body via Astro render() in slug pages - Add styled .prose section with typography for headings, code, lists, links - Create/update SearchModal: uses PagefindUI dialog, opens on search-btn click or Cmd/Ctrl+K - Wire SearchModal into BaseLayout; add search-trigger button to Header - Fix infinite HMR loop: path-filter watcher handlers in content.config.ts - Fix header flashing: transition:persist on <header> - Fix scroll bounce: remove scroll-behavior: smooth from html element - Update site title to include Thomas Thornton in 6 locations Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
# Please enter a commit message to explain why this merge is necessary, # especially if it merges an updated upstream into a topic branch. # # Lines starting with '#' will be ignored, and an empty message aborts # the commit.
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.
Why
The Astro showcase site was previously merged directly to
mainbefore it was ready for production. This PR moves that work to a proper review branch so it can be polished and merged when it's genuinely ready.What's included
A complete Astro-powered showcase site deployed to GitHub Pages, surfacing all skills, agents, packages, and MCP servers in this repo:
SkillCard,AgentCard,PackageCard), layout (Header,Footer,BaseLayout), UI primitives (Button,CategoryBadge,CodeBlock,StatusBadge), and section components (Hero,CTASection, etc.)src/content/tokens.css), reset, and global stylesdeploy.yml) that builds and deploys to GitHub Pages on pushes tomainonlyNotes
mainonly — no accidental deploys from this branchsrc/content/mirrors what's already in the repo'spackages/skill definitionsCONTRIBUTING.mdis included with guidance on adding new content entries