Repolode
slint-ui

slint-ui/slint

Slint는 Rust, C++, JavaScript, Python 앱에서 네이티브 UI를 만들 수 있는 선언형 GUI 툴킷입니다.

스타
24,241
포크
1,038
열린 이슈
749
마지막 커밋
4시간 전

어떤 프로젝트인가요?

Slint를 사용하면 자체 `.slint` 마크업 언어로 UI를 한 번 작성하고, Rust, C++, JavaScript 또는 Python으로 작성한 비즈니스 로직에 연결할 수 있습니다. `.slint` 파일은 사전 컴파일되어 네이티브 코드로 변환되며, 임베디드 시스템, 데스크톱, 모바일 플랫폼을 대상으로 합니다. 웹(WebAssembly) 데모 세트도 제공됩니다.

이 툴킷은 UI 디자인과 애플리케이션 로직을 분리해 디자이너와 개발자가 병렬로 작업할 수 있도록 합니다. 렌더링 백엔드로는 OpenGL ES 2.0(femtovg), Skia, CPU만 사용하는 소프트웨어 렌더러가 있으며, Qt가 설치되어 있으면 Qt 스타일도 사용할 수 있습니다. 도구로는 자동 완성 및 실시간 미리보기를 지원하는 LSP 서버, Visual Studio Code 확장, 자동 새로고침 기능이 있는 `slint-viewer` CLI 도구, Figma to Slint 플러그인이 제공됩니다.

Slint는 이중 라이선스로 제공됩니다. 독점 데스크톱·모바일·웹 앱에는 로열티가 없는 옵션을, 오픈소스 프로젝트에는 GPLv3 옵션을, 독점 임베디드 앱에는 상용 라이선스를 사용할 수 있습니다.

핵심 기능

  • 01레이아웃, 속성, 바인딩을 정의하는 선언형 `.slint` 마크업 언어.
  • 02Rust, C++, JavaScript, Python 바인딩.
  • 03네이티브 코드로 사전 컴파일.
  • 04다양한 렌더러: femtovg(OpenGL ES 2.0), Skia, 소프트웨어(CPU).
  • 05`.slint` 파일 편집을 위한 실시간 미리보기, LSP 서버, VS Code 확장.
  • 06디자인을 가져올 수 있는 Figma to Slint 플러그인.

활용 사례

  • Rust 또는 C++ 애플리케이션용 데스크톱·모바일 GUI 구축.
  • Raspberry Pi나 마이크로컨트롤러 같은 임베디드 기기용 UI 제작.
  • WebAssembly로 컴파일한 웹 기반 UI 배포.
  • 디자이너와 개발자가 UI와 로직을 분리해 작업하도록 지원.

빠른 시작

  1. 1

    아무것도 설치하지 않고 SlintPad에서 Hello World 예제를 엽니다

  2. 2

    언어를 선택하고 해당 언어의 Getting Started Template을 사용합니다(예: Rust template)

  3. 3

    해당 언어의 README를 따라 Slint 패키지를 설치합니다

사용 전 알아둘 점

  • 독점 앱에서 Slint를 사용하려면 로열티 프리 라이선스 또는 상용 라이선스가 필요하며, GPLv3 옵션은 오픈 소스 앱에 적용됩니다.
  • JavaScript/NodeJS 및 Python 바인딩은 Beta로 표시되어 있습니다.

토픽

자주 묻는 질문

slint은(는) 무엇인가요?
Slint는 Rust, C++, JavaScript, Python 앱에서 네이티브 UI를 만들 수 있는 선언형 GUI 툴킷입니다. Slint를 사용하면 자체 `.slint` 마크업 언어로 UI를 한 번 작성하고, Rust, C++, JavaScript 또는 Python으로 작성한 비즈니스 로직에 연결할 수 있습니다. `.slint` 파일은 사전 컴파일되어 네이티브 코드로 변환되며, 임베디드 시스템, 데스크톱, 모바일 플랫폼을 대상으로 합니다. 웹(WebAssembly) 데모 세트도 제공됩니다.
slint은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
slint은(는) Other 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
slint은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. slint의 마지막 커밋은 2026년 10월 21일입니다.
slint은(는) 어디에 사용할 수 있나요?
Rust 또는 C++ 애플리케이션용 데스크톱·모바일 GUI 구축. Raspberry Pi나 마이크로컨트롤러 같은 임베디드 기기용 UI 제작. WebAssembly로 컴파일한 웹 기반 UI 배포. 디자이너와 개발자가 UI와 로직을 분리해 작업하도록 지원.
slint는 어떻게 설치하나요?
아무것도 설치하지 않고 SlintPad에서 Hello World 예제를 엽니다 언어를 선택하고 해당 언어의 Getting Started Template을 사용합니다(예: Rust template) 해당 언어의 README를 따라 Slint 패키지를 설치합니다
slint은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/slint-ui/slint

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

관련 프로젝트