Repository navigation
feat(tanstack): upstream catalog add-on to TanStack/cli #1818
Copy link
Copy link
Closed
Labels
blockedWork cannot proceed; waiting on something elseWork cannot proceed; waiting on something elsedocsAdds or changes documentation, or acts as documentation in and of itselfAdds or changes documentation, or acts as documentation in and of itselfenhancementNew feature or improvementNew feature or improvementready for agentFully specified, ready for immediate implementationFully specified, ready for immediate implementationwwwImprovements or additions to arkenv.js.orgImprovements or additions to arkenv.js.org
Description
Summary
Submit @arkenv/tanstack-addon as an official built-in catalog add-on directly to the TanStack/cli repository (packages/create/src/frameworks/react/add-ons/arkenv), enabling developers to scaffold TanStack Start applications via:
npx @tanstack/cli create my-app --add-ons arkenvContext & RFC
- Public RFC Discussion: #1817
- Design Note:
docs/design/tanstack-cli-addon.md - Current Live Add-on: Available today via
https://arkenv.js.org/tanstack/info.json(compiled frompackages/tanstack-addon).
Blocking Preconditions
This issue is marked blocked pending two external milestones:
- ArkEnv
v1GA Graduation:- Wait until
1.0.0GA packages (@arkenv/core,@arkenv/standard,@arkenv/vite-plugin,@arkenv/rsbuild-plugin) are published on npm under thelatesttag (no@alpha). - Tear down the temporary
/tanstack/*proxy rewrite inapps/www/next.config.tsonmainsoapps/www/public/tanstack/serves natively.
- Wait until
- Upstream Bundler Alignment (TanStack/cli#505):
- Monitor TanStack/cli#505 (adding first-class
--bundler/--build-toolVite & Rsbuild support to@tanstack/create). - If Document Standard Schema validator support #505 is merged, adapt template dependencies/integrations to support both
@arkenv/vite-pluginand@arkenv/rsbuild-plugin.
- Monitor TanStack/cli#505 (adding first-class
Acceptance Criteria
- Submit PR to
TanStack/cliaddingpackages/create/src/frameworks/react/add-ons/arkenvcontaininginfo.json,package.json.ejs,README.md, andassets/. - Dependencies point to stable GA releases (e.g.
^1.0.0). - Verify
npx @tanstack/cli create test-app --add-ons arkenvsuccessfully runs interactively with validator selection (ArkType, Zod, Valibot) and optional demo route. - Update ArkEnv documentation in
apps/www/content/docs/frameworks/tanstack-start.mdxto feature the bare identifiernpx @tanstack/cli create my-app --add-ons arkenv.
Metadata
Metadata
Assignees
Labels
blockedWork cannot proceed; waiting on something elseWork cannot proceed; waiting on something elsedocsAdds or changes documentation, or acts as documentation in and of itselfAdds or changes documentation, or acts as documentation in and of itselfenhancementNew feature or improvementNew feature or improvementready for agentFully specified, ready for immediate implementationFully specified, ready for immediate implementationwwwImprovements or additions to arkenv.js.orgImprovements or additions to arkenv.js.org
Activity
pullfrog commentedon Sep 6, 2026
Analysis — not actionable yet; both blocking preconditions are unmet
I checked the two external gates named in the issue body against their live sources. Neither has cleared, so this stays
blocked. Full implementation should wait; here's the verified state and a ready-to-run plan for when the gates open.Verified state of the blocking preconditions
1. ArkEnv v1 GA graduation — NOT met. npm
dist-tagstoday:latesttag@arkenv/core1.0.0-alpha.10alpha@arkenv/standard1.0.0-alpha.10alpha@arkenv/vite-plugin0.1.61.0.0-alpha.15underalpha@arkenv/rsbuild-plugin1.0.0-alpha.1alphaNone are
1.0.0GA onlatest, so acceptance criterion #2 ("dependencies point to stable GA releases, e.g.^1.0.0") cannot be satisfied —packages/tanstack-addon/.add-on/package.json.ejsstill emits^1.0.0-alpha.1ranges. The/tanstack/:path*proxy rewrite inapps/www/next.config.ts(markedTODO(v1-ga)) is also still present on the current default branch, andapps/www/public/tanstack/is only committed onv1, not on the stable line — so the tear-down half of precondition 1 hasn't happened either.2. TanStack/cli#505 (Rsbuild bundler support) — NOT merged. PR is
open,merged: false,mergeable_state: dirty, last updated 2026-08-27. Until it lands, folding@arkenv/rsbuild-plugininto the catalog add-on is premature.Additional gotcha to fold into the eventual work
Per repo knowledge from the existing add-on work: at
@tanstack/create@0.70/@tanstack/cli@0.71(whatpackages/tanstack-addonpins), the remote add-on flow (--add-ons <url>) is non-interactive — option values fall back to defaults, no validator/demo prompt. Acceptance criterion #3 (interactive validator + demo selection) only applies to a built-in catalog add-on, so it must be verified against the@tanstack/cliversion current at merge time (re-pin@tanstack/createin devDeps if it has moved), and built-in add-ons use a different option key path (addOnOption['arkenv']resolves for the catalogid, unlike remote URLs) which the templates already handle via the fallback lookup.Plan for when both gates clear
@arkenv/core,@arkenv/standard,@arkenv/vite-plugin,@arkenv/rsbuild-pluginall1.0.0onlatest):package.json.ejsranges from^1.0.0-alpha.1to^1.0.0./tanstack/:path*rewrite inapps/www/next.config.tsand commit theapps/www/public/tanstack/mirror on the stable branch viapackages/tanstack-addon/scripts/build.tssoarkenv.js.orgserves it natively.bundleroption (vite|rsbuild) that swaps@arkenv/vite-plugin↔@arkenv/rsbuild-pluginand theVITE_↔PUBLIC_prefix in templates.packages/create/src/frameworks/react/add-ons/arkenv/:info.json,package.json.ejs,README.md,assets/— cf. thet3envreference, which also carriespackage.json+small-logo.svg), sourced frompackages/tanstack-addon; keep it compiled/tested in Turborepo CI (tests/compile.test.ts,tests/templates.test.tsalready exist).TanStack/cliwith those assets and GA version ranges.npx @tanstack/cli create test-app --add-ons arkenvwith validator selection and optional demo route.apps/www/content/docs/frameworks/tanstack-start.mdxto headline the barenpx @tanstack/cli create my-app --add-ons arkenv. Coordinate this with the upstream merge (the bare identifier only resolves once the catalog add-on ships); keep the URL form as the fallback until then.blockedonly when both gates are confirmed — npmlateston all four packages andTanStack/cli#505merged (or an explicit decision to ship Vite-only).Suggested next step: keep this issue open and
blocked, and re-trigger planning when either gate flips. Recommended re-check point: a v1 GA release announcement /1.0.0on npmlatest.DeepSeek Flash(free via Pullfrog for OSS) | 𝕏docs: complete final v0 parity audit for RC freeze (#1850)