Fix extension link in what's new, use aka.ms link in other 2 refs#592
Fix extension link in what's new, use aka.ms link in other 2 refs#592eerhardt merged 2 commits intorelease/13.2from
Conversation
There was a problem hiding this comment.
Pull request overview
This PR significantly expands aspire.dev’s frontend and documentation experience, including new API reference UI components, navigation/sidebar updates, and operational tooling/config updates (alongside the stated link/reference fixes).
Changes:
- Adds/overrides multiple Starlight components (Banner, Search, PageTitle, MarkdownContent, Footer) and introduces many new UI components for marketing/docs pages.
- Introduces new API reference components and client-side utilities (member cards, type signatures, diagrams, examples, URL sync).
- Updates repo tooling/config (scripts, package deps, GitHub Actions pinning, Dependabot, VS Code MCP config) and refreshes terminal cast assets.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 15 comments.
Show a summary per file
| File | Description |
|---|---|
| src/frontend/src/components/starlight/Search.astro | Hides search on API ref pages and injects an API-search notice into search dialog; updates global styles. |
| src/frontend/src/components/starlight/PageTitle.astro | Adds PageTitle override and API-page title styling/init script. |
| src/frontend/src/components/starlight/MarkdownContent.astro | Adds breadcrumbs rendering based on route data/frontmatter. |
| src/frontend/src/components/starlight/Head.astro | Adds sidebar collapsed state restoration, first-visit language redirect, and tooltip escape/click-outside handling. |
| src/frontend/src/components/starlight/Footer.astro | Adds socials row and preferences column; updates footer grid layout. |
| src/frontend/src/components/starlight/Banner.astro | Adds dismissible announcement banner with localStorage persistence. |
| src/frontend/src/components/api-reference/inpage-search-sync.ts | Adds URL query ↔ search-state sync helper and clear button wiring. |
| src/frontend/src/components/api-reference/TypeSignature.astro | Adds C# type signature renderer with constraints and base-type links. |
| src/frontend/src/components/api-reference/TsMemberCard.astro | Adds TS member card wrapper around shared base layout. |
| src/frontend/src/components/api-reference/RemarksBlock.astro | Adds shared remarks renderer with consistent doc-content styling. |
| src/frontend/src/components/api-reference/PolyglotAttributePanel.astro | Adds ATS/Aspire attribute metadata panel for types/members/params. |
| src/frontend/src/components/api-reference/NuGetButton.astro | Adds NuGet external-link button with NuGet icon styling. |
| src/frontend/src/components/api-reference/MemberSignatureName.astro | Adds shared multi-line member signature name display. |
| src/frontend/src/components/api-reference/MemberList.astro | Adds grouped-by-kind member list rendering with anchor headings. |
| src/frontend/src/components/api-reference/MemberCardBase.astro | Adds shared member card layout for C#/TS with signature/params/returns UI. |
| src/frontend/src/components/api-reference/InheritanceDiagram.astro | Adds Mermaid class diagram generator for inheritance/interfaces. |
| src/frontend/src/components/api-reference/Examples.astro | Adds examples renderer with language titles and doc-content descriptions. |
| src/frontend/src/components/api-reference/EnumTable.astro | Adds enum member list/table with flags hint and hex/binary display. |
| src/frontend/src/components/api-reference/AnchorHeading.astro | Adds Starlight-like anchor heading component for API pages. |
| src/frontend/src/components/TestimonialCarousel.astro | Normalizes icon sizing for carousel control. |
| src/frontend/src/components/TerminalShowcase.astro | Adds terminal hero component wrapping AsciinemaPlayer. |
| src/frontend/src/components/StreamCard.astro | Adds streaming embed card component with platform branding. |
| src/frontend/src/components/SimpleAppHostCode.astro | Adds language tabs (C# + TS AppHost) and marker/collapse shifting logic. |
| src/frontend/src/components/QuickStartJourney.astro | Adds step-by-step “journey” UI component for quickstart navigation. |
| src/frontend/src/components/PivotSelector.astro | Adds configurable marginTop and uses CSS var for margin. |
| src/frontend/src/components/OsAwareTabs.astro | Defaults syncKey and tweaks code formatting/comments. |
| src/frontend/src/components/LicenseBadge.astro | Adds license badge rendering via injected SVG markup with optional link. |
| src/frontend/src/components/IntegrationTotals.astro | Updates styling/hover states for integration stats cards. |
| src/frontend/src/components/IntegrationGrid.astro | Renames Azure AI Foundry tile to Microsoft Foundry. |
| src/frontend/src/components/IntegrationCard.astro | Adjusts icon sizing in integration cards. |
| src/frontend/src/components/InstallAspireCLI.astro | Tweaks AsciinemaPlayer poster time and disables looping. |
| src/frontend/src/components/InfinitePosts.astro | Removes the Bluesky infinite feed component implementation. |
| src/frontend/src/components/ImageShowcase.astro | Adds split text + zoomable image showcase component. |
| src/frontend/src/components/FooterSocials.astro | Adds footer socials row driven by socials config. |
| src/frontend/src/components/FooterResources.astro | Updates GitHub releases link to microsoft/aspire. |
| src/frontend/src/components/FooterLinks.astro | Replaces StackOverflow link with X/Twitter follow link. |
| src/frontend/src/components/FeatureShowcase.astro | Adds “bento” feature card grid component. |
| src/frontend/src/components/Expand.astro | Updates behavior/styling with hover scoping and ellipsis. |
| src/frontend/src/components/CapabilityGrid.astro | Adds capability cards grid with optional links. |
| src/frontend/src/components/CTABanner.astro | Adds a CTA banner component with primary/secondary actions. |
| src/frontend/scripts/update-ts-api.js | Adds script to regenerate TS API reference data via PowerShell tool. |
| src/frontend/scripts/update-github-stats.js | Updates tracked repo from dotnet/aspire to microsoft/aspire. |
| src/frontend/scripts/aspire-package-source.js | Adds logic to resolve package sources/feeds for release branches. |
| src/frontend/public/casts/aspire-wait.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-version.cast | Updates CLI recording. |
| src/frontend/public/casts/aspire-update.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-stop.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-publish.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-ps.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-otel.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-otel-traces.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-otel-spans.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-otel-logs.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-init.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-help.cast | Updates CLI recording. |
| src/frontend/public/casts/aspire-doctor.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-docs.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-docs-search.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-docs-list.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-docs-get.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-do.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-deploy.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-config.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-config-set.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-config-list.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-config-get.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-config-delete.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-cache.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-cache-clear.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-banner.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-agent.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-agent-mcp.cast | Adds new CLI recording. |
| src/frontend/public/casts/aspire-add.cast | Adds new CLI recording. |
| src/frontend/public/casts/agent-init.cast | Adds new CLI recording. |
| src/frontend/package.json | Updates deps/tools, adds update scripts, and adds pnpm overrides. |
| src/frontend/lunaria/components.ts | Updates translation guide link to internal page. |
| src/frontend/lunaria.config.json | Ignores API ref in translations; updates dashboard site/favicon URLs. |
| src/frontend/config/socials.config.ts | Updates GitHub social link to microsoft/aspire. |
| src/frontend/config/sidebar/sidebar.topics.ts | Removes diagnostics topic section from sidebar topics. |
| src/frontend/config/sidebar/integrations.topics.ts | Restructures integrations sidebar, adds/renames items, adds redirects targets. |
| src/frontend/config/sidebar/diagnostic.topics.ts | Removes diagnostics sidebar topic definition. |
| src/frontend/config/sidebar/deployment.topics.ts | Updates deployment root link and adds top-level index entry. |
| src/frontend/config/sidebar/dashboard.topics.ts | Updates dashboard root link and adds top-level index entry. |
| src/frontend/config/sidebar/community.topics.ts | Adds translation guide/thanks entries; removes BlueSky entry. |
| src/frontend/config/redirects.mjs | Adds multiple redirects for moved pages and renamed CLI commands. |
| src/frontend/config/head.attrs.ts | Updates meta description/keywords and twitter description. |
| src/frontend/astro.config.mjs | Adds route middleware, banner/page title overrides, plugin config changes, editLink change, excludes. |
| README.md | Updates repo overview text. |
| CONTRIBUTING.md | Adds translation contribution section and links. |
| AGENTS.md | Removes Copilot instructions documentation. |
| .vscode/settings.json | Updates formatter ID to esben.prettier-vscode for multiple languages. |
| .vscode/mcp.json | Updates Aspire MCP command from mcp start to agent mcp; removes playwright MCP entry. |
| .playwright/cli.config.json | Adds Playwright CLI config defaulting to Edge channel. |
| .github/workflows/security-scan.yml | Pins action SHAs and updates versions; keeps scan flow. |
| .github/workflows/integration.yml | Pins action SHAs; disables Astro telemetry during build. |
| .github/workflows/frontend-build.yml | Pins action SHAs; disables Astro telemetry during build. |
| .github/workflows/apphost-build.yml | Pins action SHAs; updates artifact action pin. |
| .github/skills/update-samples/SKILL.md | Adds skill doc describing sample-update workflow. |
| .github/skills/playwright-cli/SKILL.md | Adds skill doc describing playwright-cli usage. |
| .github/skills/doc-writer/SKILL.md | Adds guidance on telemetry disable + expands component/link guidance. |
| .github/skills/doc-tester/SKILL.md | Updates repo references, adds internal-link validation rules, updates casts list. |
| .github/prompts/update-integrations.prompt.md | Removes old prompt doc for updating integration links. |
| .github/prompts/migrate-from-learn.prompt.md | Removes old prompt doc for Learn migration plan. |
| .github/policies/auto-merge.yml | Removes policy-service auto-merge config. |
| .github/dependabot.yml | Adds Dependabot configuration for npm updates. |
| .github/CODEOWNERS | Updates ownership for workflow/pipeline and compute integration docs. |
| .dockerignore | Removes exclusions for tests section. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
This inline browser script contains TypeScript-only syntax (as any, type assertions, and union types). That will cause a runtime syntax error in the shipped JS. Convert these to plain JavaScript (e.g., use property access via window.__apiNoticeObserver without casts, and avoid TS type annotations/assertions), or move this logic into a TS module that Astro compiles.
There was a problem hiding this comment.
This inline browser script contains TypeScript-only syntax (as any, type assertions, and union types). That will cause a runtime syntax error in the shipped JS. Convert these to plain JavaScript (e.g., use property access via window.__apiNoticeObserver without casts, and avoid TS type annotations/assertions), or move this logic into a TS module that Astro compiles.
There was a problem hiding this comment.
This inline browser script contains TypeScript-only syntax (as any, type assertions, and union types). That will cause a runtime syntax error in the shipped JS. Convert these to plain JavaScript (e.g., use property access via window.__apiNoticeObserver without casts, and avoid TS type annotations/assertions), or move this logic into a TS module that Astro compiles.
There was a problem hiding this comment.
This anchor has duplicate rel attributes, which is invalid HTML; the first one will be ignored. Replace with a single rel attribute containing the intended tokens (e.g., rel=\"noopener noreferrer nofollow\" if you meant nofollow).
There was a problem hiding this comment.
Links opened with target=\"_blank\" should include rel=\"noopener noreferrer\" to prevent tabnabbing. Add the rel attribute here (and keep it consistent with other external links).
There was a problem hiding this comment.
set:html injects raw markup into the page. Since icon comes from props, this can become an XSS vector if the value is ever influenced by untrusted content (even indirectly). Prefer rendering icons via a trusted component/source, or sanitize/validate that icon is a safe SVG before injecting.
There was a problem hiding this comment.
set:html injects raw markup into the page. Since icon comes from props, this can become an XSS vector if the value is ever influenced by untrusted content (even indirectly). Prefer rendering icons via a trusted component/source, or sanitize/validate that icon is a safe SVG before injecting.
There was a problem hiding this comment.
The banner content is rendered via set:html, which permits raw HTML injection. If banner content can be modified via content contributions/PRs, this becomes a persistent XSS risk. Consider using a safer content format (e.g., render Markdown through a sanitizer/renderer with an allowlist) or strictly sanitize/validate the HTML before injecting.
There was a problem hiding this comment.
This introduces hard-coded, non-localized UI text ('Follow') in a footer area that previously used Astro.locals.t(...). For consistency with the rest of the localized footer, use a translation key (and keep icon/title/aria-label localized if applicable).
| {Astro.locals.t('footer.follow' as any)} |
There was a problem hiding this comment.
The PR title/metadata suggests a small link update, but the diff includes major feature additions (route middleware, new API reference components, new banner/search behavior, CI/workflow and dependency changes). Please update the PR description/title to reflect the expanded scope, or split into smaller PRs so link fixes can be reviewed/merged independently.
No description provided.