Awesome Vala
Valaを扱う資料や関連プロジェクトをまとめたAwesomeリストです。
目次
アプリ
暗号とセキュリティ
- Integrity Check - ファイルの検証サム(MD5、SHA1、SHA256)を取得し、作成者が提供した検証サムと比較するために設計されたVala・GTK製Linuxアプリケーション。
デザインツール
開発ツール
- GitG - git向けグラフィカルユーザーインターフェース。
- Kangaroo - 人気データベース向けのAI搭載SQLクライアント・管理ツール。
- VAMM (Vinari OS Apache & MariaDB Manager) - GTK 3 GUIを使いLAMPサービスを管理する。
ゲーム
- GameHub - すべてのゲームを統合するライブラリ。
- High Score (GNOME Games) - GNOMEデスクトップ向けレトロゲームアプリケーション。
- Sage - elementary OS向けに作られたコード解読ゲーム。
- Warble - ValaとGtkで構築されたelementary OS向けネイティブLinux単語当てゲーム。
インターネットブラウザー
- Starfish - elementary OS向けGeminiブラウザー。
音楽
- g4music - GTK4で書かれた、美しく高速で流麗な軽量音楽プレイヤー。
パーソナライズ
- Korembi - Linux向けの美しくカスタマイズ可能な壁紙マネージャー。
生産性
- Annotator - よりよいコミュニケーションのために画像へ注釈を付ける。
- Badger - 長時間座って画面を見続けないよう自分に知らせる。
- Blackbox - 美しいGTK 4ターミナル。
- Dino - GTK+/Valaを使うモダンなJabber/XMPPクライアント。
- Flowtime - GTK4 Libadwaitaのポモドーロタイマー。
- geary - GNOME 3デスクトップ向けに会話を中心として構築されたメールアプリケーション。
- GNOME Calculator - GNOMEデスクトップ向け電卓アプリ。
- graphui - graphvizに基づくグラフ可視化。
- Ideogram - 絵文字ピッカーアプリ。
- Minder - マインドマッピングアプリケーション。
- Notejot - とてもシンプルなノートアプリ。
- Notes-up - Markdownノートエディター・マネージャー。
- Outliner - アウトラインを簡単に書く。
- Paper - Markdownでノートを取る。
- pdfpc - PDFファイル用マルチモニター対応GTKプレゼンターアプリケーション。
- Planify - GNU/Linux向けに設計されたTodoist対応タスクマネージャー。
- Spice-up - モダンなLinuxデスクトップ向けプレゼンテーションアプリ。
- TextShine - テキストを変換・操作する。
- TextSnatcher - 画像から簡単にテキストをコピーする。
システムツール
- Connections - GNOMEデスクトップ環境向けリモートデスクトップクライアント。
- elementary OS App Center - elementary OS向けの、払えるだけ支払うアプリストア。
- Man Helper - manページ向けの軽量GTKフロントエンド。
- Monitor - プロセスを管理し、システムリソースを監視する。
- Peek - 使いやすいインターフェースを持つシンプルなアニメーションGIFスクリーンレコーダー。
- SwayNotifiationCenter - SwayWM向けのシンプルなGTKベース通知デーモン。
仮想化
- GNOME Boxes - 仮想マシンへアクセスするシンプルなGNOME 3アプリケーション。
天気
- Meteo - OpenWeatherMap APIを使うGTK天気アプリ。
CLIツール
- EasyDocs - 開発者ドキュメントをすばやく読む。
- Spider - HTML5サイト構造をすばやく生成する。
- Valdo - テンプレートから新しいValaプロジェクトを作る。
- Vamposer - Composer/Go modulesに着想を得て、Mesonサブプロジェクトと統合されたValaプロジェクト向け依存関係マネージャー。
エディタープラグイン
- Vala VSCode - Valaの基本的な自動補完・構文強調表示を有効にするVisual Studio Codeプラグイン。
- Vala-TMBundle - Vala構文強調表示、コード補完などを提供するTextMateバンドル。Sublime Text 3でもこのプラグインを使える。
- language-vala-modern - AtomでVala言語サポートを提供する。保守されていない「language-vala package」のフォーク。
- Vala Syntax 4 Sublime Text - 構文強調表示を提供するSublime Text 3向け基本プラグイン。
言語サーバー
- vala-language-server - Language Server仕様に従い、コード補完、フォーマット、構文強調表示などを提供することを目指す言語サーバー。
ライブラリ
コマンドライン
- console-command - コマンドライン引数をCommandパターンオブジェクトへルーティングするライブラリ。現在の実装は継承またはクロージャーによる拡張を扱う。
並行処理
- gpseq - ValaとGObject向け並列処理ライブラリ。
暗号とセキュリティ
- GnuTLS - SSL、TLS、DTLSプロトコルとその周辺技術を実装する安全な通信ライブラリ。安全な通信プロトコルにアクセスする単純なAPIと、X.509、PKCS #12、その他必要な構造の解析・書き込みAPIを提供する。
データ構造とデータ型
- Graphene - グラフィックライブラリ向けの薄い型レイヤー。点、三角形、長方形、四角形、四元数、ベクトル、行列、球など、3D変換に必要な共通型を提供する。
- Libgee - 一般的に使われるデータ構造(リスト、マップ、キュー、ツリーなど)向けのGObjectベースのインターフェース・クラスを提供するユーティリティライブラリ。
- Numeric-GLib - GCC拡張を通じ、GLib(およびVala)向けの数値データ型を集めたもの。128ビット整数・浮動小数点、複素型、ベクトル化操作、10進型を含む。
- United - キログラム、メートルなどの単位を操作するライブラリ。
- vul (Vala Utility Libraries) - テキストストリーム処理(入出力)、JSONシリアライズ・デシリアライズ、アーカイブ圧縮・展開を追加するVala向けユーティリティライブラリ群。
データベース
- Almanna ORM - Vala/GLib向けAlmanna ORM。
グラフィックスライブラリ
- Babl - 動的な任意形式間ピクセルフォーマット変換ライブラリ。
- Cairo - 複数の出力デバイスをサポートする2Dグラフィックスライブラリ。Valaで得られる実質的な既定ライブラリ。
- GEGL - 浮動小数点処理と非破壊画像処理機能を提供する、データフローベースの画像処理フレームワーク。「画像のためのリアクティブプログラミング」と考えられる。
- GRX - シンプルなグラフィックスディスプレイ(1ビットディスプレイやAdafruitのPiTFTディスプレイなど)向けグラフィックスライブラリ。キーボード、マウス、ジョイスティック、タッチスクリーン入力もサポートする。
- GSVG (GObject SVG Library) - W3C標準APIのGLib GObject実装を提供する取り組み。
- live-chart - Cairoに基づくVala・GTK3向けリアルタイムチャートライブラリ。
- SDL2 - OpenGL、Direct3D、Vulkanを通じて、音声、キーボード、マウス、ジョイスティック、グラフィックスハードウェアへの低水準アクセスを提供するクロスプラットフォーム開発ライブラリ。バインディングはValaに含まれ、Vala 0.52から利用可能。
GUIプログラミング
- GTK - ValaにおけるGUI開発の事実上の標準ライブラリ。バインディングはvalaコンパイラーに含まれる。
IoCと依存性注入
- Vadi - Vala開発者が依存性注入を使いやすくするために開発されたIoCコンテナ。
マルチメディア処理
- GStreamer - マルチメディアアプリケーションを作るための強力なフレームワーク。
数値計算
- balistica - オープンソースの弾道シミュレーションライブラリ。完全な計算機はこちら。
- vast - Valaによる生成モデリングのプロジェクト。TensorFlowをValaで書き直したものと考えられる。
テンプレート
- Compose - Vala向け関数型テンプレートライブラリ。
- template-glib - テンプレートからGObject Introspectionを呼び出せるテンプレート展開ライブラリ。
テキスト処理
- libcmark-vapi - Cで書かれたCommonMarkの解析・レンダリングライブラリlibcmark向けValaバインディング。
Web開発
- Ambition - MVCパターンを念頭にValaで書かれたWebフレームワーク。やや保守されていない(内部でValumを使うようリファクタリングし、Mesonへ移行できるかもしれない)。
- Valum - Valaだけで書かれたWebマイクロフレームワーク。
XMLとデータシリアライゼーション
- GXML - XMLを操作するGObject APIと、GObjectからXMLへのSerializableフレームワーク。
- Json-GLib - GLibとGObjectを使った完全なJSONパーサー・ジェネレーターを実装し、JSONをGLibデータ型と統合する。
- libyaml-glib - libyamlのGLibバインディングと、YAMLを理解するGObjectビルダー。