자바스크립트(JavaScript)와 타입스크립트(TypeScript) 런타임인 Deno가 웹 프로젝트를 데스크톱 애플리케이션으로 변환하는 'Deno Desktop' 기능을 공개하며 개발자들의 관심을 모으고 있습니다. Deno v2.9.0에 포함된 이 기능은 웹 앱과 Deno 코드를 플랫폼별 재배포 가능한 데스크톱 앱 바이너리로 묶어주며, 애플리케이션 코드, Deno 런타임, 웹 렌더링 엔진을 모두 포함합니다. 아직 안정 릴리스는 아니지만, 기존 웹 개발 경험을 활용해 데스크톱 앱을 만들 수 있는 새로운 선택지를 제공한다는 점에서 기대를 모으고 있습니다.
Deno Desktop은 기본적으로 운영체제 내장 웹뷰(webview)를 활용해 작은 바이너리 크기를 지향합니다. 하지만 렌더링 일관성이 중요한 경우를 위해 크로미움 임베디드 프레임워크(Chromium Embedded Framework, CEF) 백엔드도 선택할 수 있습니다. 넥스트(Next.js), 아스트로(Astro), 리믹스(Remix) 등 주요 웹 프레임워크 프로젝트를 자동으로 감지하여 릴리스 모드와 개발 모드(핫 리로드 지원)에 맞춰 서버를 실행할 수 있는 것이 특징입니다. 또한, Deno 코드와 웹뷰 간 통신에 인프로세스 채널을 사용해 효율성을 높였으며, 교차 컴파일과 bsdiff 기반의 자동 업데이트 기능까지 내장하고 있습니다. 이는 일렉트론(Electron)과 같은 기존 웹 기반 데스크톱 앱 도구들이 가졌던 큰 바이너리 크기, 플랫폼 지원 누락, 업데이트 부재 등의 단점을 보완하려는 시도로 풀이됩니다.
이러한 Deno Desktop의 등장은 웹 개발자들에게 데스크톱 앱 시장으로의 진입 장벽을 낮추는 중요한 의미를 가집니다. 웹 기술은 전 세계에서 가장 널리 알려진 UI 툴킷 중 하나이며, Deno Desktop은 이 웹 기술을 활용해 데스크톱 앱을 만들 수 있는 효율적인 방법을 제시합니다. 특히 작은 바이너리 크기와 내장된 자동 업데이트 기능은 사용자 경험을 개선하고 개발 및 배포 과정을 간소화할 수 있습니다. 물론 초기 버전인 만큼 바이너리 크기나 CEF 버전 관리 등 해결해야 할 과제도 남아있지만, Deno의 강력한 권한 시스템과 결합하여 보안과 편의성을 동시에 잡는다면, 데스크톱 앱 개발 생태계에 새로운 활력을 불어넣을 잠재력을 가지고 있습니다.