| name | dev |
| description | Watch mode development using Node --experimental-transform-types. No transpiler needed. Watches ./src/, restarts on changes. Custom entry files supported. Experimental command — may change. Use when running TypeScript in dev mode.
|
| metadata | {"type":"core","library":"@bomb.sh/tools","library_version":"0.6.0","requires":["lifecycle"],"sources":["bombshell-dev/tools:src/commands/dev.ts"]} |
Dev
Runs a TypeScript file with native Node TypeScript support and watches for changes.
Setup
pnpm run dev
How It Works
pnpm run dev runs bsh dev which shells out to:
node --experimental-transform-types --no-warnings --watch-path=./src/ <file>
- Default file:
./src/index.ts
- Watch path:
./src/ — restarts on any change in the source directory
- No transpiler needed — Node handles TypeScript natively via
--experimental-transform-types
Custom Entry
pnpm run dev -- ./src/other.ts
Additional arguments after the file path are passed through to Node.
Note
This is an experimental command that relies on Node's --experimental-transform-types flag. Most Bombshell packages use a TDD loop (pnpm run test) as their primary development workflow rather than the dev server. The dev command is useful for running scripts or servers during development, not as the main iteration cycle.
Tension: Dev command stability vs experimental Node features. The underlying --experimental-transform-types flag may change behavior between Node versions. If you hit issues, fall back to the test-driven workflow.
Common Mistakes
CRITICAL: Using tsx or ts-node
Node handles TypeScript natively. External transpilers are unnecessary and add complexity.
npx tsx src/index.ts
npx tsx watch src/index.ts
npx ts-node src/index.ts
node -r ts-node/register src/index.ts
pnpm run dev
HIGH: Installing TypeScript transpilers as dependencies
These packages are not needed in Bombshell projects.
{
"devDependencies": {
"tsx": "^4.0.0",
"ts-node": "^10.0.0",
"esbuild-register": "^3.0.0"
}
}
{
"devDependencies": {
"@bomb.sh/tools": "^0.3.1"
}
}
See Also
build/SKILL.md — Both handle TS compilation in different modes