Node.js에서 복잡한 TypeScript 마이그레이션에 지쳐서 fast-ts-integrator를 만들었습니다
Source: Dev.to

기존 Node.js 프로젝트에 TypeScript 추가하기
기존 Node.js 프로젝트에 TypeScript를 추가하는 것은 간단해 보이지만 실제로는 그렇지 않습니다.
몇 파일만 추가해도 상황이 흔히 뒤틀리기 시작합니다:
tsconfig.json이 실제 런타임과 맞지 않게 됨- CommonJS와 ESM이 서로 충돌함
.js와.ts파일이 섞여 프로젝트를 이해하기 어려워짐- 테스트와 린트 설정이 추가적인 마찰을 유발함
같은 벽에 계속 부딪히다 보니, 설정을 예측 가능하게 만들 작은 CLI를 만들게 되었습니다.
무엇인가요
fast-ts-integrator는 새로운 혹은 기존 Node.js 프로젝트에 TypeScript를 추가할 때 인터랙티브하게 설정을 도와주는 CLI입니다.
다음 옵션을 선택할 수 있습니다:
- ES Modules 또는 CommonJS
tsx또는ts-node- Biome 또는 ESLint + Prettier
- Vitest 또는 Jest
그 후 필요한 패키지를 설치하고, 설정 파일을 생성하며, 스크립트를 추가해 실제 작업을 시작할 수 있게 해줍니다.
왜 만들었나요
고통의 대부분은 “TypeScript 자체”가 아니라
그 주변 설정이었습니다:
- 올바른 모듈 전략 선택
- 런타임 동작을 일관되게 유지
- 마이그레이션 후 깨진 import 방지
- 프로젝트를 설정 파일의 소스로 전락시키지 않으면서 린트와 테스트를 연결
실제 Node.js 프로젝트에 적용 가능한 실용적인 도구가 필요했으며, 단순히 빈 예시가 아닌 것을 원했습니다.
빠른 시작
npx fast-ts-integrator
또는
npx fast-ts
예시 흐름
CLI는 몇 가지 선택지를 순차적으로 안내합니다:
- 모듈 시스템
- 실행 엔진
- 린터/포매터
- 테스트 프레임워크
선택이 끝나면 설정을 스캐폴딩하고 package.json을 자동으로 업데이트합니다.
링크
- npm: fast-ts-integrator on npm
- GitHub: fast-ts-integrator repository
아직 개선 중
이것은 초기 릴리스이며, 현재 지속적으로 개선하고 있습니다.
특히 다음과 같은 경험을 가진 분들의 실제 피드백이 큰 도움이 됩니다:
- 점진적인 JS‑to‑TS 마이그레이션
- CommonJS‑to‑ESM 문제 해결
- 기존 Express 혹은 Node 백엔드
- 마이그레이션 중에 깨지기 쉬운 린트/테스트 설정
시도해 보신다면, 어떤 부분이 매끄럽고 어떤 부분이 번거로운지 알려주시면 정말 감사하겠습니다.