{"id":26638,"library":"wds","title":"wds","description":"A fast reloading dev server for server-side TypeScript projects, version 0.24.2. Uses swc for on-demand compilation via ESM loaders and require.extensions. Prioritizes fast reboot over type checking, recommending out-of-band type checking. Key differentiators: incremental rebuilds in --watch mode, ESM and CJS support, monorepo awareness, disk caching, and IPC support. Inspired by ts-node-dev and tsx but with a focus on speed and simplicity. Maintained by Gadget Inc., with active releases.","status":"active","version":"0.24.2","language":"javascript","source_language":"en","source_url":"https://github.com/gadget-inc/wds","tags":["javascript","typescript"],"install":[{"cmd":"npm install wds","lang":"bash","label":"npm"},{"cmd":"yarn add wds","lang":"bash","label":"yarn"},{"cmd":"pnpm add wds","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Core compiler backend for TypeScript/JS transformation.","package":"@swc/core","optional":false},{"reason":"File watching for --watch mode.","package":"chokidar","optional":false}],"imports":[{"note":"wds is a CLI tool, not a library. Do not import it programmatically.","wrong":"Using require('wds') or import wds from 'wds'","symbol":"wds","correct":"npx wds script.ts"},{"note":"Configuration is done via wds.js file exporting an object, not via package.json or direct imports.","wrong":"import config from 'wds' or using .wdsrc","symbol":"config","correct":"// wds.js file in project root\nmodule.exports = { extensions: ['.ts', '.tsx'] }"},{"note":"TypeScript types are for internal use; use CLI flags for usage.","wrong":"import { WdsOptions } from 'wds'","symbol":"types","correct":"npx wds --help"}],"quickstart":{"code":"npx wds@0.24.2 --watch server.ts","lang":"typescript","description":"Runs a TypeScript server in watch mode, restarting on file changes."},"warnings":[{"fix":"Run tsc --noEmit separately in CI or use editor integration.","message":"wds does NOT type-check your code. Rely on editor or CI for type checks.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Ensure package.json has 'type': 'module' or use .mjs extensions.","message":"ESM-only from v0.21.0 onwards. CJS projects must upgrade or pin older version.","severity":"breaking","affected_versions":">=0.21.0"},{"fix":"Use --watch for file change restarts unless you need process supervision.","message":"The --supervise flag will restart the process indefinitely even on non-code exit (e.g., process.exit(0)).","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Migrate config to wds.js file per documentation.","message":"Old configuration via .swcrc is now secondary; wds.js is the primary config file.","severity":"deprecated","affected_versions":">=0.20.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Install TypeScript: npm install --save-dev typescript","cause":"wds does not require TypeScript as a peer dependency, but some projects expect it.","error":"Error: Cannot find module 'typescript'"},{"fix":"Use wds as a CLI tool: npx wds ...","cause":"Attempting to import/require wds as a module.","error":"TypeError: The 'superCtor' argument must be of type function."},{"fix":"Run npx wds or install with npm install -g wds","cause":"wds is not installed globally or in PATH.","error":"wds: command not found"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}