tinyjs - JavaScript로 약 6MB 데스크톱 앱을 만드는 경량 프레임워크

2 hours ago 2
  • 프런트엔드와 백엔드를 모두 JavaScript로 작성하는 데스크톱 앱 프레임워크로, 배포 크기는 약 6MB
  • Electron·Node.js·Chromium을 앱에 포함하지 않고, txiki.js 백엔드와 운영체제의 WebView를 조합
    • macOS는 WebKit, Windows는 WebView2, Linux는 WebKitGTK 사용
  • 화면은 HTML·CSS·JavaScript로 만들며, React·Vue·Svelte·Solid·Preact 등 프레임워크와 TypeScript 템플릿 지원
  • 백엔드에서 파일·소켓·프로세스·FFI에 접근하고, 내장 SQLite로 로컬 데이터 저장 가능
  • 네이티브 메뉴, 파일 대화상자, 트레이·메뉴바 앱, 알림, 드래그 앤 드롭과 창 제어 지원
  • 프런트엔드에서 tiny.api.call()로 백엔드 함수를 호출하고, 백엔드는 이벤트를 화면에 전달
  • 기본 구성은 HTTP 서버나 포트 없이 로컬 소켓으로 통신
    • 프레임워크 개발 시에는 Vite 개발 서버와 HMR 사용
  • tinyjs new로 프로젝트를 만들고, tinyjs dev로 실행하며 수정 사항을 자동 반영
  • tinyjs build로 앱을 패키징하고, macOS 코드 서명과 publish 기반 자동 업데이트 지원
  • macOS 중심이며 Windows·Linux 지원은 베타
  • MIT 라이선스
Read Entire Article