[docs] migrate to oxlint+oxfmt, refresh PDP/anatomy docs#289
Open
laugharn wants to merge 4 commits into
Open
Conversation
Match the template's lint setup, refresh PDP docs to reflect the current template after recent refactors, and add a script that catches stale file paths in docs Key files tables. - Replace biome with oxlint + oxfmt; delete apps/docs/biome.jsonc, add matching .oxlintrc.json and .oxfmtrc.json, wire `pnpm lint` to run `oxlint . && oxfmt --check && tsx scripts/lint-doc-paths.ts`. Register a `lint` task in turbo.json. - Format the docs tree once with oxfmt (most of the diff). Subsequent changes stay under the same convention as the template. - Add `scripts/lint-doc-paths.ts`: scans every `## Key files` section, checks each backtick'd path resolves under apps/template/ or repo root, exits nonzero on misses. - Refresh anatomy/pages/pdp.mdx and shopify/pdp.mdx to match the current PDP code (Cache Components instead of partialFallbacks, computeSelection in lib/product.ts, no product-detail-page.tsx, no components/product/pdp). - Trim Key files tables across pdp, cart, navigation, agent, plp to the load-bearing entries; sub-components discoverable by directory. - Fix stale paths the new lint script flagged: lib/shopify/client.ts → lib/shopify/fetch.ts, lib/cart-cache.ts → lib/cart/server.ts, components/collections/results.tsx → collection-page.tsx (already merged). - Remove anatomy/pages/content.mdx: documented a marketing-pages feature that no longer ships with the template.
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
- Replace the rendering strategy section's code snippet with prose
explaining Cache Components + ISR behavior: cached via
cacheLife("max") + product-{handle} tag, invalidated on Shopify
webhook. Drop unstable_instant from the docs — the export is still
in the file but the flag isn't load-bearing post Next 16 canary.26.
- Drop the explicit list of sibling PDP components at the bottom of
the Key files section. Point at components/product-detail/ instead;
the directory is the source of truth.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Prose carries the same idea without a snippet that's easy to drift from the real route. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
dbredvick
approved these changes
May 23, 2026
# Conflicts: # apps/docs/content/docs/reference/env-vars.mdx
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
apps/docs, matching the template's lint setup. Wirepnpm lintto runoxlint . && oxfmt --check && tsx scripts/lint-doc-paths.ts, and register alinttask inturbo.json. Most of the diff is the one-time oxfmt sweep over the docs tree.apps/docs/scripts/lint-doc-paths.ts: walks every## Key filessection in MDX, checks each backtick'd path resolves underapps/template/or repo root, exits nonzero on misses. Wired into the lint chain so a future rename fails CI instead of rotting silently.anatomy/pages/pdp.mdxandshopify/pdp.mdxto match the current template after the PDP variant-resolution collapse ([template] collapse PDP variant resolution into one ProductSelection #283): Cache Components instead ofpartialFallbacks,computeSelectioninlib/product.ts, noproduct-detail-page.tsx, nocomponents/product/pdp.Key filestables across pdp, cart, navigation, agent, and plp to the load-bearing entries; sub-components discoverable by directory.lib/shopify/client.ts→lib/shopify/fetch.ts,lib/cart-cache.ts→lib/cart/server.ts,components/collections/results.tsx→collection-page.tsx.anatomy/pages/content.mdx: documented a marketing-pages feature that no longer ships with the template (and theenable-shopify-cmsskill covers the opt-in CMS path).Test plan
pnpm lintis green at the repo root (turbo runs bothtemplate:lintanddocs:lint).pnpm --filter docs lint:doc-pathsreports✓ 57 doc path(s) verified.pnpm --filter docs buildsucceeds (verifies the format sweep didn't break any MDX/TSX).apps/docs/biome.jsoncdeletion has no fallout (no@biomejs/biomewas installed or referenced in CI).🤖 Generated with Claude Code