Deno 버리고 Node로 돌아온 개발자

원제: Friendship ended with Deno, now Node is my best friend

왜 중요한가

Node.js의 개선이 Deno 등 대안 런타임 사용자의 자발적 복귀를 이끌 만큼 실질적임을 보여주는 현장 사례다.

영국 웹 개발자 David Bushell이 2026년 10월 3일, 수년간 사용해온 Deno 런타임을 떠나 Node.js v26.10.0으로 전환했다고 밝혔다. SvelteKit 클라이언트 프로젝트를 계기로 돌아온 Node에서 ECMAScript 최신 문법 지원, 개선된 파일 시스템 API, TypeScript 직접 실행 기능 등을 확인했다.

Bushell은 오랫동안 Deno를 주 런타임으로 써왔지만, 이번 달 SvelteKit 프로젝트를 진행하면서 Node.js로 복귀했다. Node v26.10.0에서는 `require()` 없이 ECMAScript 모듈이 기본 지원되고, 파일 시스템 API도 약 10년 전과 비교해 크게 개선됐다고 평가했다.

패키지 관리 면에서는 NPM 대신 PNPM을 선택했다. 보안 우려 때문이다. 그는 NPM의 'M'은 'malware'의 약자라고 비꼬며, PNPM의 `minimumReleaseAge`를 1440분(1일)으로 설정해 악성 패키지 노출 위험을 줄였다. 또 NPM·NPX 명령어를 각각 PNPM·PNPX로 연결하는 alias도 추가했다.

TypeScript 지원에 관해서는 절반의 호평을 남겼다. Node는 이제 TypeScript 파일을 직접 실행할 수 있지만, `node_modules` 하위 경로의 TypeScript 패키지는 타입 스트리핑을 거부한다. 이 제한은 기술적 한계가 아니라 철학적 결정으로, Node.js 공식 문서도 NPM에 TypeScript 패키지를 배포하는 것을 사실상 권장하지 않는다고 명시하고 있다. 이 때문에 Bushell은 번들링 도구 Tsdown을 추가로 도입해야 했다.

정적 사이트 생성기를 Deno에서 Node로 옮기는 작업은 생각보다 간단했다. Deno의 파일 시스템 API를 `node:fs`로, `Deno.serve`를 Hono의 Node 어댑터로 교체하는 것이 전부였다고 밝혔다.

출처

dbushell.com — 원문 읽기 →