Repolode
blackboardsh

blackboardsh/electrobun

메인 프로세스는 TypeScript, UI는 webview로 작성해 작고 빠른 크로스 플랫폼 앱을 만드는 프레임워크이며, Zig, Rust, Go, Odin도 지원합니다.

대체할 수 있는 제품:Electron

스타
12,939
포크
374
열린 이슈
146
마지막 커밋
그저께

어떤 프로젝트인가요?

Electrobun은 크로스 플랫폼 데스크톱 애플리케이션을 빌드하고 업데이트해 배포하는 프레임워크입니다. 애플리케이션 로직은 TypeScript로 작성한 Bun 기반 메인 프로세스에서 실행되고, UI는 격리된 webview에서 렌더링됩니다. 타입이 지정된 RPC로 두 프로세스를 연결하므로, 개발자는 타입 안전성을 유지하면서 메인 프로세스와 webview 코드를 하나의 코드베이스에서 관리할 수 있습니다.

이 프로젝트는 작은 앱 크기와 효율적인 업데이트에 중점을 둡니다. 자체 압축 해제 번들은 Zstandard 압축을 사용하며, 업데이트는 바이너리 패치(BSDIFF)로 제공하고, 실패할 경우 압축된 전체 파일을 다운로드합니다. bundleCEF 옵션은 일관된 렌더링을 위해 Chromium 버전을 고정하며 파일 크기는 커집니다. bundleWGPU 옵션을 사용하면 webview 없이 TypeScript로 네이티브 GPU surface를 제어할 수 있습니다.

Electrobun에는 SDK와 툴체인을 관리하는 네이티브 빌드 및 워크스페이스 CLI인 Hutch가 포함되어 있습니다. `hutch electrobun init`, `bunx electrobun init` 또는 `npx electrobun init`을 사용해 템플릿으로 프로젝트를 시작할 수 있습니다. 공식 지원 대상 플랫폼은 macOS 14 이상, Windows 11 x64, Ubuntu 24.04 이상입니다.

핵심 기능

  • 01타입이 지정된 RPC로 메인 프로세스와 webview를 연결하고, 두 영역의 코드를 TypeScript로 작성
  • 02Zstandard로 압축한 자체 압축 해제 번들
  • 03바이너리 패치 업데이트(BSDIFF)와 전체 다운로드 대체 방식
  • 04선택적으로 Chromium(CEF)을 번들링하거나 WebGPU surface 사용
  • 05메인 프로세스에서 Zig, Rust, Go, Odin도 사용 가능

활용 사례

  • 자주 업데이트해야 하고 대역폭을 적게 사용하는 소형 TypeScript 데스크톱 도구 배포
  • 기존 Bun 또는 웹 앱의 데스크톱 프런트엔드 구축
  • 웹 기반 UI와 네이티브 GPU 렌더링을 함께 사용

빠른 시작

  1. 1

    공식 스크립트로 Hutch CLI를 설치합니다(macOS 또는 Linux).

  2. 2

    Hutch 설치를 건너뛰고 npm으로 시작합니다.

    npx electrobun init
  3. 3

    템플릿을 선택한 다음 Quick Start 가이드에 따라 앱을 실행합니다.

사용 전 알아둘 점

  • Linux 최종 사용자 시스템에는 GTK 3, WebKitGTK 4.1, Ayatana AppIndicator, librsvg 런타임 패키지를 설치해야 합니다.
  • JSC 기반 대체 런타임인 Cottontail은 실험 단계입니다.

토픽

자주 묻는 질문

electrobun은(는) 무엇인가요?
메인 프로세스는 TypeScript, UI는 webview로 작성해 작고 빠른 크로스 플랫폼 앱을 만드는 프레임워크이며, Zig, Rust, Go, Odin도 지원합니다. Electrobun은 크로스 플랫폼 데스크톱 애플리케이션을 빌드하고 업데이트해 배포하는 프레임워크입니다. 애플리케이션 로직은 TypeScript로 작성한 Bun 기반 메인 프로세스에서 실행되고, UI는 격리된 webview에서 렌더링됩니다. 타입이 지정된 RPC로 두 프로세스를 연결하므로, 개발자는 타입 안전성을 유지하면서 메인 프로세스와 webview 코드를 하나의 코드베이스에서 관리할 수 있습니다.
electrobun은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
electrobun은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
electrobun은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. electrobun의 마지막 커밋은 2026년 10월 18일입니다.
electrobun은(는) 어디에 사용할 수 있나요?
자주 업데이트해야 하고 대역폭을 적게 사용하는 소형 TypeScript 데스크톱 도구 배포 기존 Bun 또는 웹 앱의 데스크톱 프런트엔드 구축 웹 기반 UI와 네이티브 GPU 렌더링을 함께 사용
electrobun는 어떻게 설치하나요?
공식 스크립트로 Hutch CLI를 설치합니다(macOS 또는 Linux). Hutch 설치를 건너뛰고 npm으로 시작합니다.: npx electrobun init 템플릿을 선택한 다음 Quick Start 가이드에 따라 앱을 실행합니다.
electrobun은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/blackboardsh/electrobun

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트