Scaffold a modern React + TypeScript + Vite app with configurable extras instead of one fixed setup.
- React 19 + Vite 8 + TypeScript 6
- ESLint flat config with TypeScript, React Hooks, React Refresh, and import sorting
- Prettier as a separate formatter
- Vitest + Testing Library + jsdom
@/imports via Vite's native tsconfig path support
minimal— core toolchain onlystandard— core toolchain + coverage supportteam— coverage +simple-git-hooks+commitlint+ Playwright
Default preset: standard
npx github:ideaspaper/create-react-ts my-app# Lean starter
npx github:ideaspaper/create-react-ts my-app --preset minimal
# Default starter with pnpm-flavoured docs
npx github:ideaspaper/create-react-ts my-app --pm pnpm
# Team-oriented setup, then install immediately
npx github:ideaspaper/create-react-ts my-app --preset team --pm pnpm --install
# Pick features manually
npx github:ideaspaper/create-react-ts my-app \
--hooks husky \
--commitlint \
--coverage \
--vitest-ui \
--e2e playwright--preset <minimal|standard|team>--pm <npm|pnpm|yarn>--hooks <none|simple-git-hooks|husky>--commitlint/--no-commitlint--coverage/--no-coverage--vitest-ui/--no-vitest-ui--e2e <none|playwright>--playwrightshortcut for--e2e playwright--installinstall dependencies after scaffolding--git/--no-gitinitialize a git repository-h, --help-v, --version
- No lockfile is bundled in the template.
- Git is initialized automatically when hooks are enabled.
- The generated app README is customized to the selected package manager and enabled features.
- If you enable Playwright, run the generated
test:e2e:installscript once to download browsers.