Fix build issue tanstack router && add cli option for router 03f1aac3
Maximilian Leodolter · 2025-08-08 08:50 2 file(s) · +18 −16
src/index.ts +5 −0
28 28
		"--tsquery",
29 29
		"use TanStack Query for data fetching and state management",
30 30
	)
31 +
	.option(
32 +
		"--router <router>",
33 +
		"specify a client router (none, reactrouter, tanstackrouter)",
34 +
		"none",
35 +
	)
31 36
	.option("--linter <linter>", "specify the linter to use (eslint or biome)")
32 37
	.action(create);
33 38
src/installers/tanstack-router.ts +13 −16
7 7
import { addPackageDependency } from "@/utils/add-package-dependency";
8 8
import { EXTRAS_DIR } from "@/utils";
9 9
import { nameGenerator } from "@/utils/name-generator";
10 +
import { execa } from "execa";
10 11
11 12
export const tanstackRouterInstaller = async (
12 13
	options: Required<ProjectOptions>,
96 97
		const appTsxTarget = path.join(projectPath, "client", "src", "App.tsx");
97 98
		fs.remove(appTsxTarget);
98 99
99 -
		// const selectedTemplate = nameGenerator("App.tsx", {
100 -
		// 	rpc,
101 -
		// 	shadcn,
102 -
		// 	tailwind,
103 -
		// 	tanstackQuery,
104 -
		// 	reactRouter: true,
105 -
		// });
100 +
		spinner.text = "Generating TanStack Route Tree...";
106 101
107 -
		// const appTsxSrc = path.join(
108 -
		// 	EXTRAS_DIR,
109 -
		// 	"client",
110 -
		// 	"src",
111 -
		// 	"App.tsx",
112 -
		// 	selectedTemplate,
113 -
		// );
114 -
		// const appTsxTarget = path.join(projectPath, "client", "src", "App.tsx");
115 -
		// fs.copySync(appTsxSrc, appTsxTarget);
102 +
		// await execa("vite", ["--config", "vite.config.ts", "--force"], {
103 +
		// 	cwd: path.join(projectPath, "client"),
104 +
		// });
116 105
		//
106 +
		await execa("vite", ["build"], {
107 +
			cwd: path.join(projectPath, "client"),
108 +
		});
109 +
110 +
		await execa("tsc", ["-b"], {
111 +
			cwd: path.join(projectPath, "client"),
112 +
		});
113 +
117 114
		spinner.success("TanStack Router setup completed");
118 115
		return true;
119 116
	} catch (err: unknown) {