Tauri는 다양한 언어를 지원하는 프로그램 제작에 사용되는 범용 툴킷.
웹 뷰에 렌더링된 Rust와 HTML을 조합해 응용 프로그램을 구축하는데 사용됩니다.
특징
- 커스텀 메뉴 - 사용자 정의 메뉴 UI
- 트레이 인터페이스 - 시스템 트레이에 아이콘 표시, 설정, 알림 제어
- 자동 업데이트 기능
- 매우 가벼움 - 웹 뷰를 사용하기 때문, 런타임이 없음(바로 Rust로 컴파일된 파일을 가지고 있음)
- 보안 - Rust로 컴파일된 파일을 리버스 엔지니어링 하기 어렵기에 보안에 유리함
Tauri 설계
- WRY, TAO를 직접 사용하여 OS에 시스템호출을 수행합니다.
- WRY는 Rust의 크로스플랫폼(Windows, macOS, Linux 지원) WRY(WebView rendering library) 입니다.
- TAO는 Rust의 크로스플랫폼 윈도우 창 관리(생성, 크기 조정, 키입력, 마우스 이동 이벤트) 라이브러리 입니다.
프로세스 모델
렌더링
아니 문서 왜 없어
프로세스 간 통신
이벤트
명령
설명을 생략해서 제송합니다.
보안
IPC(Inter-Process Communication) 계층
- Tauri의 보안 모델은 Rust 코드와 WebView에 의해 이해되는 코드를 분리한다.
- 서로 간에 전달되는 모든 데이터를 검사하고 각 계층의 역할 위반을 방지하기 위해 매우 중요하다는데?
라이프 사이클
중요하디 중요한 라이프 사이클.
1. Upstream
2. Development
3. Building
4. Distribution
5. Runtime
프로젝트 생성
npm create tauri-app@latest -- --rc
실행
cd tauri-app
npm install
npm run tauri dev