1단계
왜 Tauri — Electron 과 비교
20 분
왜 Tauri — Electron 과 비교
데스크탑 앱을 React · Vue 로 짜고 싶으면 Electron 이 오래 표준이었습니다. Tauri 2 는 같은 자리를 더 작고 가벼운 방식으로 채웁니다.
1. 번들 크기 비교
| 최소 앱 | Electron | Tauri 2 |
|---|---|---|
| macOS | ~130 MB | ~10 MB |
| Windows | ~100 MB | ~8 MB |
| Linux | ~90 MB | ~5 MB |
Electron 은 Chromium + Node 를 통째로 품고, Tauri 는 OS 네이티브 WebView 를 빌려 씁니다.
2. 메모리 · RAM
최소 앱 idle 기준 Electron 은 200 MB+, Tauri 는 30 ~ 60 MB. 저사양 노트북에서 체감 차이가 큽니다.
3. 보안 — 얇은 IPC 표면
Electron 은 Node 전체 API 가 렌더러에 열려 있어 XSS → 파일 삭제로 쉽게 번집니다. Tauri 는 IPC command 가 명시적 Rust 함수만 노출하고 기본은 deny.
#[tauri::command]
fn greet(name: &str) -> String {
format!("Hello, {}!", name)
}
프론트에서 invoke("greet", {name: "..."}) 만 호출 가능. 파일 쓰기 · 프로세스 실행 같은 위험 기능은 opt-in.
4. 성능 · 시작 시간
cold start: Electron ~1 ~ 2 초, Tauri ~200 ~ 500ms. Rust 바이너리가 가볍고 Chromium 부팅이 없음.
5. 모바일 지원 (Tauri 2 의 신규 축)
Electron 은 데스크탑 전용. Tauri 2 는 Android · iOS 지원 (2024 정식 릴리스). 한 코드베이스로 데스크탑 + 모바일.
6. 어떤 경우 Electron 이 유리?
- Node ecosystem 깊이 의존 (Slack · VS Code · Discord 같은 대형 앱)
- Electron 개발자 · 문서 풀 더 넓음
- 몇 세대 축적된 auto-update · crash reporting
MVP · 리소스 효율 · 모바일 확장성 중 하나라도 중요하면 Tauri.
7. 어떤 경우 Tauri 가 유리?
- 설치 파일 10 MB 이하 선호 (자동 업데이트 비용 ↓)
- 보안 엄격 (화이트리스트 IPC)
- Rust 에 거부감 없음 (또는 대부분 TypeScript 만)
- 안드로이드 배포 계획
하고픈 말
Tauri 는 "JavaScript 위주로 짜고, Rust 는 필요할 때만" 이 가능. 웹 개발자가 데스크탑 · 모바일로 가는 가장 얇은 길.
Next
- 02-project-setup