Electrobun이 뭐였더라
혹시 Electrobun이라는 프로젝트를 들어보셨나요? 이름에서 느껴지듯이 Electron의 대안으로 등장한 데스크톱 앱 프레임워크인데요. Electron이 Chromium과 Node.js를 묶어서 만드는 방식이라면, Electrobun은 OS 내장 웹뷰(macOS의 WebKit, Windows의 WebView2)와 Bun 런타임을 묶어서 훨씬 가볍게 데스크톱 앱을 만들 수 있게 해주는 도구였습니다.
쉽게 비유하자면, Electron이 "앱마다 크롬 브라우저 한 벌씩 포함시켜서 배포"하는 거라면, Electrobun은 "운영체제에 이미 깔린 브라우저 엔진을 빌려 쓰자"는 접근이에요. 그래서 같은 앱이라도 용량이 10분의 1 수준으로 줄어들고, 메모리도 적게 먹는 게 큰 장점이었습니다. Bun을 쓰면 JavaScript 실행 속도도 빠르고요.
2.0에서 무엇이 바뀌는가
이번 발표의 핵심은 Electrobun 2.0이 더 이상 Bun에 묶이지 않는다는 점입니다. 1.x 버전까지는 "Electron이 Node.js를 묶듯이 Electrobun은 Bun을 묶는다"는 게 정체성이었거든요. 이름에도 "bun"이 들어가 있고요. 그런데 메인테이너가 핵심부를 Rust로 다시 작성하면서 구조가 근본적으로 바뀐 거예요.
Rust로 재작성한다는 게 무슨 의미냐면, 기존에는 네이티브 브릿지(JavaScript와 OS API를 연결하는 부분)가 C++나 Objective-C로 작성돼 있고 Bun이 이를 호출하는 구조였어요. 이걸 Rust로 바꾸면 메모리 안전성이 보장되면서도 C++ 수준의 성능을 낼 수 있고, 무엇보다 런타임을 자유롭게 교체할 수 있게 됩니다. Bun, Node.js, Deno, 심지어 Python까지 어떤 런타임도 붙일 수 있는 구조가 되는 거죠.
왜 이런 결정을 했을까
Bun과의 결합은 양날의 검이었습니다. Bun이 빠르고 가볍다는 장점은 있었지만, 동시에 Bun이 지원하지 않는 플랫폼에서는 Electrobun도 못 쓴다는 한계가 있었거든요. 예를 들어 Bun의 Windows 지원이 한동안 불안정했는데, 이게 그대로 Electrobun의 발목을 잡았어요. 또 Bun 자체가 빠르게 진화하면서 호환성 이슈가 계속 생겼고요.
Rust 코어로 분리되면 Electrobun은 "웹뷰 + 네이티브 브릿지" 전문 프레임워크로 정체성이 명확해집니다. 런타임 선택은 사용자에게 맡기고, 자기는 "OS 웹뷰를 가장 잘 다루는 레이어"가 되는 거예요. Tauri와 비슷한 방향성이라고 볼 수 있습니다.
데스크톱 프레임워크 지형도
현재 가벼운 데스크톱 앱 시장은 경쟁이 꽤 치열한데요. Tauri는 Rust 기반에 OS 웹뷰를 쓰는 가장 성숙한 대안이고, 한국에서도 점점 채택이 늘고 있습니다. Wails는 Go 기반의 비슷한 접근이고요. Neutralinojs는 더 미니멀한 방향이에요. Electron은 여전히 시장 1위지만, VS Code, Discord, Slack 같은 거대 앱들이 메모리 문제로 욕을 먹으면서 가벼운 대안에 대한 수요가 꾸준히 늘고 있습니다.
Electrobun이 Rust 기반으로 재탄생하면 사실상 Tauri와 정면 경쟁 구도가 됩니다. 차이점은 Tauri가 백엔드 로직도 Rust로 작성하길 권장하는 반면, Electrobun은 "JavaScript/TypeScript로 모든 걸 짜고 싶어하는 웹 개발자"를 타겟으로 한다는 점이에요. 이게 진입장벽 측면에서는 큰 차이를 만들 수 있습니다.
한국 개발자에게 주는 시사점
한국에서도 사내 도구나 스타트업의 데스크톱 클라이언트를 만들 때 Electron 피로감을 호소하는 팀이 많아졌어요. "앱 켜는데 5초, RAM 500MB" 같은 평을 듣고 싶지 않다면 대안을 진지하게 봐야 할 시점입니다. 다만 Electrobun은 아직 1.x 단계라 프로덕션 안정성은 Tauri보다 떨어져요. 사이드 프로젝트나 내부 도구로 먼저 시도해보는 게 합리적입니다.
또 하나 주목할 점은 Rust로 재작성하는 흐름이 JS 생태계 전반에 퍼지고 있다는 거예요. Turbopack, SWC, Rolldown, Biome 등 핵심 개발 도구들이 줄줄이 Rust로 옮겨가고 있죠. JavaScript 개발자라도 이제 Rust 기본기는 알아둬야 "내가 쓰는 도구가 어떻게 동작하는지" 이해할 수 있는 시대가 됐습니다.
마무리
Electrobun 2.0의 분리는 "이름값보다 구조적 자유도"를 택한 결정으로 보입니다. Bun과 묶여서 얻는 마케팅 효과보다, 어떤 런타임이든 붙일 수 있는 유연성이 장기적으로 더 가치 있다는 판단인 거죠.
여러분은 데스크톱 앱을 만들 때 Electron, Tauri, 그리고 이런 새로운 대안 중 어떤 걸 선택하시겠어요? 무게(번들 크기, 메모리)와 개발 편의성 사이에서 어디에 우선순위를 두시나요?
🔗 출처: Hacker News
"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"
실제 수강생 후기- 비전공자도 6개월이면 첫 수익
- 20년 경력 개발자 직강
- 자동화 프로그램 + 소스코드 제공