Describe the bug
Package manager available: npm only (no pnpm).
Expected behavior:
void init should detect which package manager is available on the system and use it, or explicitly ask the user which package manager to use during the interactive flow.
Actual behavior:
Vite+ defaults to pnpm and attempts to run pnpm install, which fails with a "pnpm not found" error if pnpm isn't installed. There is no fallback to npm and no prompt to choose a package manager.
Additional context:
Also encountered a secondary bug on Windows: at the end of void init (when run in an existing project), the Drizzle migration step fails with:
'C:\Program' is not recognized as an internal or external command
This appears to be a Windows path-with-spaces quoting issue in the migration runner.
What i did was, I chose no database, then on next step, when it prompted to setup a API route demo project, I chose Yes
Reproduction
No URL, tested on local
Steps to reproduce
Create a fresh empty directory
Run npm install -D void
Run npx void init in that empty directory
Select Vite+ as the toolchain
Complete the interactive prompts
System Info
Environment:
OS: Windows 11
Node version: v22.16.0
Void version: 0.7.13
Package manager available: npm only (no pnpm)
Used Package Manager
npm
Logs
PS C:\Users\DELL\Desktop\Learning\VoidBeta> npx void init
┌ void init
│
● Existing project detected. Configuring Void...
│
◆ Updated package.json with Void dependencies and Vite scripts
│
◆ Created vite.config.ts
│
◆ Created tsconfig.json
│
● Don't forget to install typescript
│
◆ Created .gitignore
│
◆ Pinned worker compatibility_date in void.json
│
◇ Choose a database setup for this project:
│ No Database Yet
│
● No database configured yet
│
◇ Could not detect your coding agent. Which one are you using?
│ Generic
│
◆ Created AGENTS.md with Void instructions
│
● Skills linking skipped for generic agent setup
│
◇ Add this MCP server config to your agent ─╮
│ │
│ { │
│ "void": { │
│ "command": "npx", │
│ "args": [ │
│ "void", │
│ "mcp" │
│ ] │
│ } │
│ } │
│ │
├────────────────────────────────────────────╯
│
◇ Scaffold demo code? (migration + API route + frontend fetch)
│ Yes
│
◆ Created db/schema.ts
│
◆ Created routes/api/posts.ts
│
◆ Created src/demo.ts
│
◇ Type Safety Demo ─────────────────────────────────────────────────────╮
│ │
│ SQL migration → DB types → Route handler → Route types → Typed fetch │
│ │
│ Run `vite dev` and open src/demo.ts to see the types in action. │
│ Try changing the migration or handler — types update automatically. │
│ │
├────────────────────────────────────────────────────────────────────────╯
│
◇ Create .github/workflows/deploy.yml to deploy on pushes to main?
│ No
│
◇ Generating initial Drizzle migration
│
■ Failed to generate the starter database migration.
│
│ 'C:\Program' is not recognized as an internal or external command,
│ operable program or batch file.
PS C:\Users\DELL\Desktop\Learning\VoidBeta>
Validations
Describe the bug
Package manager available: npm only (no pnpm).
Expected behavior:
void init should detect which package manager is available on the system and use it, or explicitly ask the user which package manager to use during the interactive flow.
Actual behavior:
Vite+ defaults to pnpm and attempts to run pnpm install, which fails with a "pnpm not found" error if pnpm isn't installed. There is no fallback to npm and no prompt to choose a package manager.
Additional context:
Also encountered a secondary bug on Windows: at the end of void init (when run in an existing project), the Drizzle migration step fails with:
'C:\Program' is not recognized as an internal or external command
This appears to be a Windows path-with-spaces quoting issue in the migration runner.
What i did was, I chose no database, then on next step, when it prompted to setup a API route demo project, I chose Yes
Reproduction
No URL, tested on local
Steps to reproduce
Create a fresh empty directory
Run npm install -D void
Run npx void init in that empty directory
Select Vite+ as the toolchain
Complete the interactive prompts
System Info
Used Package Manager
npm
Logs
Validations