Repository navigation
Conversation
Fill the previously-stubbed practical guides under content/docs/guide,
in English and Korean:
- frontend: packing, development, upload, deploy, and bridges/{index,
checking-sources, update-remote-bundles, testing}
- native: {electron,tauri,android,ios,deno}/{local-development,builtin},
plus tauri/mobile and deno/building
Fix broken internal /docs links across the docs so none 404:
- concept short-forms -> /docs/guide/core-concepts/*
- getting-started/platform-support -> platform-and-framework-support
- /docs/guide/spec/* -> /docs/guide/remote/http-spec/*
- /docs/guide/providers/* -> /docs/guide/remote/providers/*
- /docs/guide/bundle-format -> /docs/guide/core-concepts/webview-bundle
Correct bundleProtocol('app') usage in the Deno setup pages.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VSyTK87Kia293eVqtbeken
- Translate the remaining English section headings in the Korean docs to Korean, keeping code identifiers, @wvb/* package names, and proper nouns; fix in-page anchors that pointed at translated headings. - Remove the "Next steps" / "다음 단계" navigation section from every guide and reference page (English and Korean), keeping the two locales in structural lockstep. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VSyTK87Kia293eVqtbeken
…penNext/Cloudflare) Replace the TanStack Start + Vite app with a Next.js 16 App Router site deployed via @opennextjs/cloudflare (workerd). - app/[lang] structure with fumadocs i18n (en unprefixed, ko under /ko) - landing, docs, and 404 ported to components/ (client where interactive) - changelog rendered as an async Server Component (GitHub releases) - search API moved to a Next route handler (app/api/search) - i18n + Cloudflare Access middleware - last-updated (git commit time) shown on docs pages - localized error screens (error.tsx / global-error.tsx) with Sentry capture - favicon from the wvb logo (app/icon.png, app/apple-icon.png) - drop the garu-ko Korean WASM tokenizer/model; ko search now uses a lightweight eojeol tokenizer (no WASM, no extra deps) - remove all remaining TanStack/Vite code, config, and dependencies Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AFm8T7PNfkxNcN9yFTCe8J
Deploying with
|
| Status | Name | Latest Commit | Updated (UTC) |
|---|---|---|---|
| ❌ Deployment failed View logs |
webview-bundle-website | 561b726 | Jul 06 2026, 03:31 PM |
The migration commit didn't run the formatter; oxfmt normalizes import ordering and line wrapping so the `format` CI check passes. No behavior change. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AFm8T7PNfkxNcN9yFTCe8J
Add `yarn check:links` (scripts/validate-links.ts) and a CI job so a broken or orphan link — a `/docs/...` page or `#anchor` that doesn't exist, including `<Card href>` targets — fails the build instead of shipping. Handles the i18n setup (hideLocale: 'default-locale'): content links are un-prefixed and validated against the un-prefixed URL space, with Korean pages also contributing their `/ko/...` URLs and both locales' heading anchors. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AFm8T7PNfkxNcN9yFTCe8J
main advanced only via PR #11 (the same `newdoc` docs work this branch is built on) plus a WORKS.md update — it made no code or content changes this branch doesn't already contain. Resolved by keeping the migration (ours) for all code, config, and docs content, dropping the old `src/` TanStack app, and taking main's WORKS.md. Verified: `next build` green, `yarn check:links`, lint, and format all pass; `yarn install --immutable` in sync. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AFm8T7PNfkxNcN9yFTCe8J
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.
Summary
Migrates the website from TanStack Start + Vite to Next.js 16 (App Router), deployed via
@opennextjs/cloudflare(workerd). The oldsrc/app, Vite config, and TanStack/Vite dependencies are removed.Migration
app/[lang]/…with fumadocs i18n middleware (hideLocale: 'default-locale'→ English at unprefixed URLs, Korean under/ko). Pure locale helpers live inlib/i18n.ts(server+client safe); React context inlib/locale.tsx.src/layouts/**tocomponents/**(client components where interactive).app/[lang]/docs/changelog), fetching GitHub releases server-side (replaces the oldcreateServerFn).app/api/search).*.workers.devpreviews, wrapped so it can't break i18n routing).Follow-up polish (in this branch)
PageLastUpdate.error.tsx/global-error.tsx(components/ErrorScreen.tsx) that callSentry.captureException; client Sentry init ininstrumentation-client.ts(no-op unlessNEXT_PUBLIC_SENTRY_DSNis set).app/icon.png256×256,app/apple-icon.png180×180).Notable decisions
force-dynamic. With no OpenNext incremental cache configured, serving a prerendered page through the default-locale rewrite (/docs/*→/en/docs/*) hangs. SSR is fast (MDX is bundled). SSG can be restored later by configuring an incremental cache inopen-next.config.ts.@sentry/cloudflare); client capture only.Verification
next build(Turbopack) +opennextjs-cloudflare buildgreen,oxlint+tscpass. Smoke-tested on the workerd preview (yarn preview): home / docs / changelog / search (EN + KO) / 404 / error screen / last-updated / favicon all confirmed.Caveats
next dev(Turbopack) — useyarn previewto test it locally on workerd.middleware.ts→proxy.ts(deprecation warning only; works as-is).🤖 Generated with Claude Code
https://claude.ai/code/session_01AFm8T7PNfkxNcN9yFTCe8J
Summary by cubic
Migrated the site from TanStack Start + Vite to Next.js 16 App Router on Cloudflare (
@opennextjs/cloudflare), with bilingual i18n routing, SSR docs/changelog, localized error handling with@sentry/nextjs, and a CI link validator to prevent broken/docsroutes and anchors.Migration
app/[lang]and fumadocs i18n: EN unprefixed, KO at/ko; locale helpers and context split for server/client.*.workers.devpreviews.force-dynamicwith notebook layout, mobile TOC, and “Last updated” timestamp; redirects/docsand/docs/guideto the first Guide page.garu-ko.error.tsx,global-error.tsx) with client@sentry/nextjs; localized 404.yarn check:links(vianext-validate-link) job to block bad/docsURLs and#anchors.next dev(useyarn preview); Next 16 warns to renamemiddleware.ts→proxy.ts.Dependencies
next@16,@opennextjs/cloudflare,fumadocs-*,@sentry/nextjs,@tailwindcss/postcss.garu-ko.open-next.config.ts, updatedwrangler.jsoncfor.open-nextoutput, and a link-check script (scripts/validate-links.ts).Written for commit 561b726. Summary will update on new commits.