Skip to content

Feat/rspress migration - #158

Closed
ryok90 wants to merge 24 commits into
mainfrom
feat/rspress-migration
Closed

Feat/rspress migration#158
ryok90 wants to merge 24 commits into
mainfrom
feat/rspress-migration

Conversation

@ryok90

@ryok90 ryok90 commented Mar 14, 2026

Copy link
Copy Markdown
Contributor

What's added in this PR?

  • Migrates the website from the legacy Rsbuild/TanStack runtime path to Rspress SSG with generated static pages for blog/changelog detail routes.
  • Preserves existing site structure and visual behavior while cleaning up legacy build/runtime artifacts (old app entry files, router tree, and Rsbuild config/deps).
  • Improves metadata handling for SEO and social cards:
    • per-page title/description/canonical/OG/Twitter tags emitted at build time
    • richer social image tags (og:image:secure_url, og:image:type, twitter:image:src, etc.)
    • OG/Twitter image assets now guaranteed to exist in public output.
  • Adds SITE_URL_SOCIALS (fallback: https://zephyr-cloud.io) to override thumbnail URL host only for social tags across environments.
  • Fixes parity and rendering issues found during migration QA (including blog hydration mismatch and /products/ai app screenshot visibility).

What's the issue related to this PR?

The previous setup relied on client-side rendering patterns for key content pages, which weakened indexing and made social previews inconsistent. This migration targets:

  • reliable static HTML for indexable content,
  • consistent canonical/OG/Twitter metadata,
  • and dependable social thumbnail rendering across production/preview environments.

How to test this PR?

  1. Install and build:
    • pnpm install
    • pnpm build
  2. Typecheck:
    • pnpm exec tsc --noEmit
  3. Preview locally:
    • pnpm preview
  4. Validate metadata in built HTML (example):
    • doc_build/blog/nextjs-without-lock-in-vinext-on-zephyr.html
    • confirm canonical, og:image, twitter:image, and new image meta tags are present.
  5. Validate SITE_URL_SOCIALS behavior:
    • SITE_URL_SOCIALS=https://preview-social.example.com pnpm run generate:rspress-content
    • confirm generated og:image/twitter:image* use the override host,
    • confirm og:url and canonical remain https://zephyr-cloud.io/....

Checklist

  • I have added explanation of the changes I made
  • UI related: this PR has been visually reviewed for both web, mobile, and tablet

@ryok90 ryok90 self-assigned this Mar 14, 2026
@github-actions

github-actions Bot commented Mar 14, 2026

Copy link
Copy Markdown

🚀 Preview Environment Ready!

Name Status URL
zephyr-landing ✅ Active https://zackary-chapple-14004-zephyr-landing-zephyr-websi-e36fd15... ↗

Details:

  • Latest Commit: 8b0b453
  • Updated at: 3/23/2026, 12:53:42 PM

@ryok90
ryok90 marked this pull request as draft March 23, 2026 12:50
@ryok90 ryok90 closed this Apr 6, 2026
@ryok90
ryok90 deleted the feat/rspress-migration branch April 6, 2026 12:10
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.

1 participant