
Deno 공식 문서에 따르면 Deno 프로젝트는 Deno 2.9에 포함될 예정인 새 명령어 `deno desktop`을 공개했다. 이 기능은 단일 TypeScript 파일부터 Next.js 같은 웹 프레임워크 기반 프로젝트까지, Deno 런타임과 웹 렌더링 엔진을 함께 묶어 재배포 가능한 데스크톱 애플리케이션으로 만드는 것을 목표로 한다.
현재 문서 기준 `deno desktop`은 아직 안정 릴리스에 포함되지 않았다. Deno는 시험 사용을 위해 canary 빌드 설치를 안내하면서, 명령어와 설정 키, TypeScript API가 안정화 전까지 바뀔 수 있다고 설명한다. 정식 사용 시점은 Deno 2.9로 예고됐다.
핵심은 웹 개발자가 이미 보유한 코드와 프레임워크를 데스크톱 환경으로 옮기는 진입 장벽을 낮추는 데 있다. Deno 문서는 Next.js, Astro, Fresh, Remix, Nuxt, SvelteKit, SolidStart, TanStack Start, Vite SSR 프로젝트를 자동 감지해 별도 코드 변경 없이 데스크톱 앱으로 실행할 수 있다고 안내한다. 개발 모드에서는 핫 리로드를, 배포 모드에서는 프로덕션 서버 구성을 활용하는 방식이다.
렌더링 엔진 선택지도 함께 제시됐다. 기본값은 운영체제의 내장 WebView를 쓰는 방식이다. macOS의 WKWebView, Windows의 WebView2, Linux의 WebKitGTK를 활용해 앱 크기를 줄이는 방향이다. 반대로 플랫폼 간 동일한 렌더링 결과나 WebGPU 같은 최신 웹 기능이 필요한 경우에는 Chromium Embedded Framework 기반 백엔드를 선택할 수 있다. 이 경우 바이너리 크기는 커지지만 macOS, Windows, Linux에서 더 일관된 웹 플랫폼 지원을 기대할 수 있다.
Deno는 데스크톱 앱 배포에서 반복적으로 문제가 되는 업데이트와 플랫폼별 빌드도 기능 범위에 넣었다. 문서에는 한 기기에서 macOS, Windows, Linux용 빌드를 만들 수 있고, 필요한 백엔드는 사전 빌드된 바이너리를 다운로드해 캐시에 저장한다고 설명돼 있다. 또한 latest.json 매니페스트와 bsdiff 패치를 활용하는 자동 업데이트, 실패 시 롤백 구조도 포함된다고 밝혔다.
이번 기능은 Electron과 Tauri가 자리 잡은 데스크톱 웹 앱 개발 영역에 Deno가 더 직접적으로 진입하겠다는 신호로 볼 수 있다. Deno는 작은 기본 바이너리, Node 호환성, npm 생태계 접근, 프레임워크 자동 감지, Deno 코드와 웹뷰 사이의 인프로세스 바인딩을 차별점으로 내세운다. 다만 안정 릴리스 전 기능인 만큼 실제 바이너리 크기, 플랫폼별 호환성, 프레임워크별 배포 경험은 Deno 2.9 정식 출시 이후 검증이 필요하다.
출처: Deno Docs https://docs.deno.com/runtime/desktop/
출처: Deno Docs Backends https://docs.deno.com/runtime/desktop/backends/