Repolode
slint-ui

slint-ui/slint

Slintは、Rust、C++、JavaScript、PythonアプリでネイティブUIを構築できる宣言型GUIツールキットです。

スター
24,241
フォーク
1,038
未解決の Issue
749
最終コミット
2 時間前

これは何?

Slintでは、独自の`.slint`マークアップ言語でUIを一度記述し、Rust、C++、JavaScript、Pythonで書かれたビジネスロジックに接続できます。`.slint`ファイルは事前にネイティブコードへコンパイルされます。組み込みシステム、デスクトップ、モバイルプラットフォームを対象としており、Web(WebAssembly)向けのデモ一式も用意されています。

このツールキットはUIデザインとアプリケーションロジックを分離するため、デザイナーと開発者が並行して作業できます。レンダリングバックエンドにはOpenGL ES 2.0(femtovg)、Skia、CPUのみで動作するソフトウェアレンダラーがあり、QtがインストールされていればQtスタイルも利用できます。ツールには、オートコンプリートとライブプレビューに対応したLSPサーバー、Visual Studio Code拡張機能、自動再読み込み機能を備えたコマンドラインツール`slint-viewer`、FigmaからSlintへのプラグインが含まれます。

Slintはデュアルライセンスで提供されており、プロプライエタリなデスクトップ、モバイル、Webアプリ向けのロイヤリティフリーの選択肢、オープンソースプロジェクト向けのGPLv3、プロプライエタリな組み込みアプリ向けの商用ライセンスがあります。

主な機能

  • 01レイアウト、プロパティ、バインディングを記述する宣言型`.slint`マークアップ言語。
  • 02Rust、C++、JavaScript、Python向けのバインディング。
  • 03ネイティブコードへの事前コンパイル。
  • 04複数のレンダラーに対応:femtovg(OpenGL ES 2.0)、Skia、ソフトウェア(CPU)。
  • 05`.slint`ファイル編集用のライブプレビュー、LSPサーバー、VS Code拡張機能。
  • 06デザインをインポートするためのFigmaからSlintへのプラグイン。

ユースケース

  • RustまたはC++アプリケーション向けのデスクトップ/モバイルGUIの構築。
  • Raspberry Piやマイクロコントローラーなど、組み込みデバイス向けUIの作成。
  • WebAssemblyにコンパイルしたWebベースの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`ファイルは事前にネイティブコードへコンパイルされます。組み込みシステム、デスクトップ、モバイルプラットフォームを対象としており、Web(WebAssembly)向けのデモ一式も用意されています。
slint は無料で使えますか?ライセンスは?
slint は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
slint は今もメンテナンスされていますか?
活発にメンテナンス中。slint の最終コミットは 2026年10月21日 です。
slint は何に使えますか?
RustまたはC++アプリケーション向けのデスクトップ/モバイルGUIの構築。 Raspberry Piやマイクロコントローラーなど、組み込みデバイス向けUIの作成。 WebAssemblyにコンパイルしたWebベースのUIのリリース。 デザイナーと開発者がUIとロジックを分けて作業するための活用。
slint のインストール方法は?
インストール不要で、SlintPad の Hello World の例を開きます 言語を選び、その言語の Getting Started Template(Rust template など)を使います 選んだ言語の README に従って Slint パッケージをインストールします
slint はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/slint-ui/slint

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト