Skip to content

Tauri

모든 주요 데스크톱(macOS, Linux, Windows)과 모바일(iOS, Android) 플랫폼을 위한 작고 빠른 바이너리를 구축하기 위한 프레임워크.

다중 플랫폼 배포를 위한 최적화되어 있고, 안전하며, 프론트엔드 독립적인 앱을 구축해보세요.

Tauri vs Electron

Authme라는 크로스플랫폼 2FA앱으로 항목별 비교

  • 번들 : OS의 웹뷰를 사용하는 Tauri가 훨씬 작음. 2.5MB vs. 85MB
  • 시작시간 : Tauri ~2초 vs. Electron ~4초
  • 램 사용량 :
    • 윈도우에서는 Tauri 80MB, Electron 120MB로 큰 차이 없음
    • 리눅스에서는 Tauri 80MB, Electron 쪽에 뭔가 많이 떠서 500MB 이상으로 큰 차이가 남
  • AppBackend : Electron은 Node.js 런타임을 사용하므로 JavaScript 코딩이면 되지만, Tauri는 Rust 코딩이 필요함
    • Tauri 로드맵에서는 Python, C++, Deno도 지원 예정이라고
  • 렌더링 : Electron은 윈/맥/리눅스 모두 크로미엄을 이용, Tauri는 윈(Edge WebView2)/리눅스(WebKitGTK)/맥(WebKit)
    • 브라우저별 차이가 있을 수 있어서, Tauri에서는 폴리필을 이용해야 할 경우가 있음
  • 보안 : Tauri는 매우 많은 보안 기능들을 내장하여 기본적으로 안전
  • 자동 업데이트 :
    • Tauri쪽이 더 간단. 내장 Updater가 있음(직접 업데이트 서버를 운영해야한다는 단점은 있음)
    • Electron은 electron-updater가 많이 쓰임. 장점은 GitHub 릴리즈에서 직접 바이너리를 가져오는게 가능해서 편리함
  • 개발자 경험 :
    • Tauri는 그냥 CLI만 설치하면 모든게 바로 사용 가능(핫 리로딩, 번들링, 앱 생성등)
    • Electron은 그런거 없이 프레임워크 자체만 줌. 핫 리로딩/번들링을 알아서 해야함
    • Tauri의 가장 큰 장점은 모든 웹프레임워크와 호환된다는 것

결론

  • Tauri를 선택
  • 아직 부족한 부분이 있지만, 몇년내에 Tauri팀이 Electron을 따라잡을 것
  • 특히 기대하는 것은 Deno를 백엔드로 사용가능하게 되는 것과 더 편한 자동 업데이트 및 iOS/Android 지원

WARNING

아직 그대로 믿진 말자

See also

Favorite site