@tanstack/create 0.62.3 → 0.63.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/create-app.js +3 -1
  3. package/dist/frameworks/react/add-ons/ai/package.json +3 -3
  4. package/dist/frameworks/react/add-ons/apollo-client/package.json +2 -2
  5. package/dist/frameworks/react/add-ons/better-auth/package.json +1 -1
  6. package/dist/frameworks/react/add-ons/clerk/package.json +1 -1
  7. package/dist/frameworks/react/add-ons/convex/package.json +2 -2
  8. package/dist/frameworks/react/add-ons/db/package.json +3 -3
  9. package/dist/frameworks/react/add-ons/drizzle/package.json.ejs +5 -5
  10. package/dist/frameworks/react/add-ons/form/package.json +2 -2
  11. package/dist/frameworks/react/add-ons/mcp/package.json +2 -2
  12. package/dist/frameworks/react/add-ons/neon/package.json +2 -2
  13. package/dist/frameworks/react/add-ons/oRPC/package.json +7 -7
  14. package/dist/frameworks/react/add-ons/paraglide/package.json +1 -1
  15. package/dist/frameworks/react/add-ons/posthog/package.json +2 -2
  16. package/dist/frameworks/react/add-ons/prisma/package.json.ejs +7 -7
  17. package/dist/frameworks/react/add-ons/sentry/package.json +1 -1
  18. package/dist/frameworks/react/add-ons/shadcn/package.json +1 -1
  19. package/dist/frameworks/react/add-ons/store/package.json +3 -3
  20. package/dist/frameworks/react/add-ons/storybook/package.json +2 -2
  21. package/dist/frameworks/react/add-ons/strapi/package.json +2 -2
  22. package/dist/frameworks/react/add-ons/t3env/package.json +2 -2
  23. package/dist/frameworks/react/add-ons/tRPC/package.json +4 -4
  24. package/dist/frameworks/react/add-ons/table/package.json +3 -3
  25. package/dist/frameworks/react/add-ons/tanstack-query/package.json +2 -2
  26. package/dist/frameworks/react/add-ons/workos/package.json +2 -2
  27. package/dist/frameworks/react/examples/events/package.json +3 -3
  28. package/dist/frameworks/react/examples/resume/package.json +2 -2
  29. package/dist/frameworks/react/hosts/cloudflare/package.json.ejs +2 -2
  30. package/dist/frameworks/react/hosts/netlify/package.json +1 -1
  31. package/dist/frameworks/react/project/base/package.json +13 -13
  32. package/dist/frameworks/react/toolchains/biome/package.json +1 -1
  33. package/dist/frameworks/react/toolchains/eslint/package.json +2 -2
  34. package/dist/frameworks/solid/add-ons/better-auth/package.json +1 -1
  35. package/dist/frameworks/solid/add-ons/convex/package.json +3 -3
  36. package/dist/frameworks/solid/add-ons/form/package.json +1 -1
  37. package/dist/frameworks/solid/add-ons/sentry/package.json +1 -1
  38. package/dist/frameworks/solid/add-ons/store/package.json +2 -2
  39. package/dist/frameworks/solid/add-ons/strapi/package.json +2 -2
  40. package/dist/frameworks/solid/add-ons/t3env/package.json +2 -2
  41. package/dist/frameworks/solid/add-ons/tanstack-query/package.json +2 -2
  42. package/dist/frameworks/solid/examples/tanchat/assets/ai-streaming-server/package.json +3 -3
  43. package/dist/frameworks/solid/examples/tanchat/package.json +2 -2
  44. package/dist/frameworks/solid/hosts/cloudflare/package.json.ejs +2 -2
  45. package/dist/frameworks/solid/hosts/netlify/package.json +1 -1
  46. package/dist/frameworks/solid/project/base/package.json +8 -8
  47. package/dist/frameworks/solid/toolchains/biome/package.json +1 -1
  48. package/dist/frameworks/solid/toolchains/eslint/package.json +2 -2
  49. package/dist/npm-resolver.js +56 -0
  50. package/dist/package-json.js +2 -2
  51. package/dist/types/npm-resolver.d.ts +18 -0
  52. package/package.json +1 -1
  53. package/src/create-app.ts +3 -1
  54. package/src/frameworks/react/add-ons/ai/package.json +3 -3
  55. package/src/frameworks/react/add-ons/apollo-client/package.json +2 -2
  56. package/src/frameworks/react/add-ons/better-auth/package.json +1 -1
  57. package/src/frameworks/react/add-ons/clerk/package.json +1 -1
  58. package/src/frameworks/react/add-ons/convex/package.json +2 -2
  59. package/src/frameworks/react/add-ons/db/package.json +3 -3
  60. package/src/frameworks/react/add-ons/drizzle/package.json.ejs +5 -5
  61. package/src/frameworks/react/add-ons/form/package.json +2 -2
  62. package/src/frameworks/react/add-ons/mcp/package.json +2 -2
  63. package/src/frameworks/react/add-ons/neon/package.json +2 -2
  64. package/src/frameworks/react/add-ons/oRPC/package.json +7 -7
  65. package/src/frameworks/react/add-ons/paraglide/package.json +1 -1
  66. package/src/frameworks/react/add-ons/posthog/package.json +2 -2
  67. package/src/frameworks/react/add-ons/prisma/package.json.ejs +7 -7
  68. package/src/frameworks/react/add-ons/sentry/package.json +1 -1
  69. package/src/frameworks/react/add-ons/shadcn/package.json +1 -1
  70. package/src/frameworks/react/add-ons/store/package.json +3 -3
  71. package/src/frameworks/react/add-ons/storybook/package.json +2 -2
  72. package/src/frameworks/react/add-ons/strapi/package.json +2 -2
  73. package/src/frameworks/react/add-ons/t3env/package.json +2 -2
  74. package/src/frameworks/react/add-ons/tRPC/package.json +4 -4
  75. package/src/frameworks/react/add-ons/table/package.json +3 -3
  76. package/src/frameworks/react/add-ons/tanstack-query/package.json +2 -2
  77. package/src/frameworks/react/add-ons/workos/package.json +2 -2
  78. package/src/frameworks/react/examples/events/package.json +3 -3
  79. package/src/frameworks/react/examples/resume/package.json +2 -2
  80. package/src/frameworks/react/hosts/cloudflare/package.json.ejs +2 -2
  81. package/src/frameworks/react/hosts/netlify/package.json +1 -1
  82. package/src/frameworks/react/project/base/package.json +13 -13
  83. package/src/frameworks/react/toolchains/biome/package.json +1 -1
  84. package/src/frameworks/react/toolchains/eslint/package.json +2 -2
  85. package/src/frameworks/solid/add-ons/better-auth/package.json +1 -1
  86. package/src/frameworks/solid/add-ons/convex/package.json +3 -3
  87. package/src/frameworks/solid/add-ons/form/package.json +1 -1
  88. package/src/frameworks/solid/add-ons/sentry/package.json +1 -1
  89. package/src/frameworks/solid/add-ons/store/package.json +2 -2
  90. package/src/frameworks/solid/add-ons/strapi/package.json +2 -2
  91. package/src/frameworks/solid/add-ons/t3env/package.json +2 -2
  92. package/src/frameworks/solid/add-ons/tanstack-query/package.json +2 -2
  93. package/src/frameworks/solid/examples/tanchat/assets/ai-streaming-server/package.json +3 -3
  94. package/src/frameworks/solid/examples/tanchat/package.json +2 -2
  95. package/src/frameworks/solid/hosts/cloudflare/package.json.ejs +2 -2
  96. package/src/frameworks/solid/hosts/netlify/package.json +1 -1
  97. package/src/frameworks/solid/project/base/package.json +8 -8
  98. package/src/frameworks/solid/toolchains/biome/package.json +1 -1
  99. package/src/frameworks/solid/toolchains/eslint/package.json +2 -2
  100. package/src/npm-resolver.ts +65 -0
  101. package/src/package-json.ts +2 -2
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "dependencies": {
3
3
  "highlight.js": "^11.11.1",
4
- "markdown-it": "^14.1.0",
5
- "lucide-solid": "^0.544.0"
4
+ "lucide-solid": "^0.577.0",
5
+ "markdown-it": "^14.1.0"
6
6
  }
7
7
  }
@@ -3,9 +3,9 @@
3
3
  "deploy": "<%= packageManager %> run build && wrangler deploy"
4
4
  },
5
5
  "dependencies": {
6
- "@cloudflare/vite-plugin": "^1.13.8"
6
+ "@cloudflare/vite-plugin": "^1.26.0"
7
7
  },
8
8
  "devDependencies": {
9
- "wrangler": "^4.40.3"
9
+ "wrangler": "^4.70.0"
10
10
  }
11
11
  }
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "devDependencies": {
3
- "@netlify/vite-plugin-tanstack-start": "^1.2.3"
3
+ "@netlify/vite-plugin-tanstack-start": "^1.2.15"
4
4
  }
5
5
  }
@@ -10,18 +10,18 @@
10
10
  "test": "vitest run"
11
11
  },
12
12
  "dependencies": {
13
- "@tanstack/solid-router": "^1.133.20",
14
- "@tanstack/solid-router-devtools": "^1.133.20",
15
- "@tanstack/solid-router-ssr-query": "^1.132.25",
16
- "@tanstack/solid-start": "^1.133.20",
17
- "solid-js": "^1.9.9",
13
+ "@tanstack/solid-router": "latest",
14
+ "@tanstack/solid-router-devtools": "latest",
15
+ "@tanstack/solid-router-ssr-query": "latest",
16
+ "@tanstack/solid-start": "latest",
17
+ "solid-js": "^1.9.11",
18
18
  "vite-tsconfig-paths": "^5.1.4"
19
19
  },
20
20
  "devDependencies": {
21
- "@tanstack/devtools-vite": "^0.3.11",
21
+ "@tanstack/devtools-vite": "latest",
22
22
  "vite-plugin-solid": "^2.11.10",
23
- "typescript": "^5.7.2",
24
- "vite": "^7.1.7"
23
+ "typescript": "^5.9.2",
24
+ "vite": "^7.3.1"
25
25
  },
26
26
  "pnpm": {
27
27
  "onlyBuiltDependencies": ["esbuild", "lightningcss"]
@@ -5,6 +5,6 @@
5
5
  "check": "biome check"
6
6
  },
7
7
  "devDependencies": {
8
- "@biomejs/biome": "2.2.4"
8
+ "@biomejs/biome": "2.4.5"
9
9
  }
10
10
  }
@@ -5,7 +5,7 @@
5
5
  "check": "prettier --write . && eslint --fix"
6
6
  },
7
7
  "devDependencies": {
8
- "@tanstack/eslint-config": "^0.3.2",
9
- "prettier": "^3.5.3"
8
+ "@tanstack/eslint-config": "latest",
9
+ "prettier": "^3.8.1"
10
10
  }
11
11
  }
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Resolves npm package versions at generation time.
3
+ *
4
+ * When a template specifies "latest" for a package, we fetch the actual
5
+ * current version from the npm registry and pin it exactly, so generated
6
+ * projects don't silently drift over time.
7
+ */
8
+
9
+ const cache = new Map<string, string>()
10
+
11
+ export async function resolveNpmVersion(pkg: string): Promise<string | null> {
12
+ if (cache.has(pkg)) {
13
+ return cache.get(pkg)!
14
+ }
15
+
16
+ try {
17
+ const res = await fetch(`https://registry.npmjs.org/${pkg}/latest`, {
18
+ headers: { Accept: 'application/vnd.npm.install-v1+json' },
19
+ })
20
+ if (!res.ok) return null
21
+ const data = (await res.json()) as { version?: string }
22
+ const version = data.version ?? null
23
+ if (version) cache.set(pkg, version)
24
+ return version
25
+ } catch {
26
+ return null
27
+ }
28
+ }
29
+
30
+ /**
31
+ * Walk a deps object and resolve any "latest" values to pinned versions.
32
+ * Non-"latest" values are left untouched.
33
+ */
34
+ export async function resolveLatestVersions(
35
+ deps: Record<string, string>,
36
+ ): Promise<Record<string, string>> {
37
+ const entries = Object.entries(deps)
38
+ const resolved = await Promise.all(
39
+ entries.map(async ([name, version]) => {
40
+ if (version !== 'latest') return [name, version] as const
41
+ const pinned = await resolveNpmVersion(name)
42
+ return [name, pinned ?? 'latest'] as const
43
+ }),
44
+ )
45
+ return Object.fromEntries(resolved)
46
+ }
47
+
48
+ /**
49
+ * Resolve all "latest" version specifiers in a package.json object's
50
+ * dependencies and devDependencies in-place, returning a new object.
51
+ */
52
+ export async function resolvePackageJSONLatest(
53
+ packageJSON: Record<string, any>,
54
+ ): Promise<Record<string, any>> {
55
+ const result = { ...packageJSON }
56
+
57
+ if (result.dependencies) {
58
+ result.dependencies = await resolveLatestVersions(result.dependencies)
59
+ }
60
+ if (result.devDependencies) {
61
+ result.devDependencies = await resolveLatestVersions(result.devDependencies)
62
+ }
63
+
64
+ return result
65
+ }
@@ -136,7 +136,7 @@ export function createPackageJSON(options: Options) {
136
136
  packageJSON.devDependencies = {
137
137
  ...(packageJSON.devDependencies ?? {}),
138
138
  '@tanstack/router-plugin':
139
- packageJSON.devDependencies?.['@tanstack/router-plugin'] ?? '^1.132.0',
139
+ packageJSON.devDependencies?.['@tanstack/router-plugin'] ?? 'latest',
140
140
  }
141
141
  }
142
142
 
@@ -147,7 +147,7 @@ export function createPackageJSON(options: Options) {
147
147
  packageJSON.devDependencies = {
148
148
  ...(packageJSON.devDependencies ?? {}),
149
149
  '@tanstack/router-plugin':
150
- packageJSON.devDependencies?.['@tanstack/router-plugin'] ?? '^1.133.20',
150
+ packageJSON.devDependencies?.['@tanstack/router-plugin'] ?? 'latest',
151
151
  }
152
152
  }
153
153
  }