| 1 | #!/usr/bin/env node |
| 2 | |
| 3 | // @ts-ignore: Shebang line |
| 4 | |
| 5 | import { create } from "@/commands/create"; |
| 6 | import { program } from "@/program"; |
| 7 | import { DEFAULT_REPO } from "./utils"; |
| 8 | |
| 9 | program |
| 10 | .name("create-bhvr") |
| 11 | .description("Create a bhvr monorepo starter project") |
| 12 | .argument("[project-directory]", "directory to create the project in") |
| 13 | .option("-y, --yes", "skip confirmation prompts") |
| 14 | .option( |
| 15 | "--repo <repo>", |
| 16 | "specify a custom GitHub repository as source", |
| 17 | DEFAULT_REPO, |
| 18 | ) |
| 19 | .option( |
| 20 | "--template <template>", |
| 21 | "specify a template (default, tailwind, shadcn)", |
| 22 | "default", |
| 23 | ) |
| 24 | .option("--branch <branch>", "specify a branch to use from the repository") |
| 25 | .option("--rpc", "use Hono RPC client for type-safe API communication") |
| 26 | .option( |
| 27 | "--tsquery", |
| 28 | "use TanStack Query for data fetching and state management", |
| 29 | ) |
| 30 | .option( |
| 31 | "--router <router>", |
| 32 | "specify a client router (none, reactrouter, tanstackrouter)", |
| 33 | ) |
| 34 | .option("--linter <linter>", "specify the linter to use (eslint or biome)") |
| 35 | .action(create); |
| 36 | |
| 37 | program.parse(); |