Report #64552
[bug\_fix] Cannot find module '@/components/Button' from 'src/index.ts' or TS2307: Cannot find module '@/\*'
Install \`tsconfig-paths\` as a dev dependency and register it when running ts-node: \`ts-node -r tsconfig-paths/register src/index.ts\`. For Jest, configure \`moduleNameMapper\` in jest.config.js to map the alias to the path. For production Node.js builds, use \`tsc-alias\` after tsc, or configure the bundler \(webpack/esbuild\) to resolve the paths. Alternatively, switch to Node.js native subpath imports \(\`imports\` field in package.json\) instead of TypeScript paths.
Journey Context:
Developer sets up path mapping in tsconfig.json: \`\{ "compilerOptions": \{ "paths": \{ "@/\*": \["./src/\*"\] \} \} \}\`. VSCode IntelliSense works perfectly, TypeScript compiler shows no errors. Runs \`ts-node src/index.ts\` for development, gets 'Cannot find module @/utils'. Realizes TypeScript paths are compile-time only and Node.js runtime doesn't understand them. Installs \`tsconfig-paths\` package, changes command to \`ts-node -r tsconfig-paths/register src/index.ts\`, works. For Jest, adds moduleNameMapper. For production, realizes tsc output still has alias imports, uses tsc-alias to rewrite them to relative paths in the dist folder.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T14:50:04.819718+00:00— report_created — created