Get Started
Scafix is a single CLI that initializes multiple modern stacks through one shared command surface.
Install or run directly
bash
npm install -g scafix
npx scafixnpx scafix works without a global install.
Common starting points
bash
npx scafix
npx scafix --name api-starter --directory services/api
npx scafix create
npx scafix create astro
npx scafix create sveltekit
npx scafix create nuxt --name content-site --package-manager pnpm
npx scafix create nest --name api-core --package-manager pnpm
npx scafix create hono --directory services/edge-api
npx scafix create vite
npx scafix create vite --name web-app --package-manager bun
npx scafix create next
npx scafix create next --name dashboard --yes --package-manager pnpm
npx scafix create express
npx scafix create npmShared flow
- Interactive root usage requires a TTY. Non-interactive shells should use
scafix create <stack> --yes. - When
--nameis omitted, Scafix falls back tomy-projectin--yesmode or prompts interactively. - Directories must be relative paths inside the current working directory. Existing directories are rejected.
- Scafix strips
.gitdirectories produced by upstream generators and only initializes Git itself when requested.
Package manager detection
- Checks bun.lock / bun.lockb
- Checks pnpm-lock.yaml
- Checks yarn.lock
- Checks package-lock.json
- Checks package.json#packageManager
Additional rules:
- Detection walks up from the current working directory and prefers the nearest ancestor match.
- If no supported lockfile or package manager field is found, Scafix defaults to npm.
- Yarn Berry is detected from
.yarnrc.yml, Plug'n'Play files, or apackageManagerfield.
