14 ポイント 投稿者 GN⁺ 2024-07-07 | 2件のコメント | WhatsAppで共有
  • デスクトップ、モバイル、組み込みプラットフォームを含むクロスプラットフォームで動作する GUI アプリを開発するためのオープンソースの Python フレームワーク
  • 高速で簡単なインタラクション設計と迅速なプロトタイピングを可能にすると同時に、コードの再利用と配布を可能にすることを目標としている
  • 使いやすく、単一のコードベースで複数のプラットフォームにアプリを配布できる
    • Mac、Linux(Raspberry Pi OS を含む)、BSD、Windows、iOS、Android
    • すべての Kivy ウィジェットはマルチタッチをサポート
  • Python と Cython で書かれており、OpenGL ES 2.0 ベース
  • ビジネスフレンドリーな MIT ライセンスで 100% 無料で利用可能であり、専門的に開発・サポート・保守されている
  • 10年の歴史を持つフレームワークで、豊富なエコシステムが存在する
    • Buildozer: モバイルデバイスを含む複数のプラットフォームにインストールできるよう、Python アプリケーションをバイナリパッケージに変換する開発ツール
    • Plyer: さまざまなプラットフォーム(Android、iOS、macOS、Linux、Windows)のハードウェア機能にアクセスするための、プラットフォーム非依存の Python API
    • PyJNIus: JNI(Java Native Interface)を使用して Java クラスにアクセスするための Python ライブラリ
    • Pyobjus: Objective-C ランタイムのリフレクションを使用して Objective-C クラスに Python クラスとしてアクセスするための Python モジュール
    • Python for Android: Python アプリを Android デバイス上で実行できるバイナリにパッケージ化する開発ツール
    • Kivy iOS: iOS で Kivy アプリケーションを実行するために必要なライブラリをコンパイルし、Xcode プロジェクトの生成を管理するツールチェーン
    • Audiostream: マイクとスピーカーに直接アクセスできるライブラリ
    • KivEnt: Kivy 向けのエンティティベースのゲームエンジン
    • Oscpy: Open Sound Control(OSC)ネットワークプロトコルの Python 実装
    • Garden: ユーザーが作成・保守するウィジェットおよびライブラリ

2件のコメント

 
cosine20 2024-07-10

うえっ……

 
GN⁺ 2024-07-07
Hacker Newsのコメント
  • Kivyには関連するさまざまなプロジェクトがあり、python-for-androidやPlyerのようなツールがある

    • python-for-android: Android向けのPythonプロジェクトをコンパイルするツール
    • Plyer: クロスプラットフォームAPIを提供するツール(通知、ハードウェア、ファイル選択など)
  • KivyMDは、Kivy上でMaterial Designを実装したツールである

  • Kivyチームは親切で、PyConやFOSDEMで会った経験がある

  • Kivyフレームワークは使いやすく、kvという記述言語が非常に便利である

  • クロスコンパイルは難しいことがあり、アプリの読み込み時間も長いが、動作はする

  • Qtのような大きなフレームワークと比べると、いくつか機能が不足しており、WebViewがなく、アクセシビリティも弱い

  • 全体として非常に良いプロジェクトだが、もっと広く知られていないのが残念

  • 2024年時点では、Kivyギャラリーのスクリーンショットは魅力的ではない

  • Electronは今のところ「デスクトップ」UIの王者に見える

  • アクセシビリティについてサイト上での言及がなく、まだ実装されていないように見える

  • Kivyはユーザー向けアプリには適していない

  • 新しいUIフレームワークにアクセシビリティ機能の不足があるのは残念だ

  • Kivyのランディングページは、フレームワーク自体よりも資金支援について多く触れている

  • UIを見せる画像が1枚しかなく、スタイルもストックフォトのように見える

  • ギャラリーには上部リンクからアクセスできる

  • JavaFXも依然として優れており、50MBヒープで問題なく動くアプリを持っている

  • ネイティブOS向けインストーラーも提供しているが、Web対応はない

  • Kivyは、2014年に自分が初めてオープンソースへ貢献するきっかけになったプロジェクトである

  • VimにKivyファイルのサポートを提出し、Bram Moolenaarとメールでパッチ差分をやり取りしながら作業した

  • Bram Moolenaarに哀悼の意を表する

  • KatrainはKivyを使っており、ローリングリリース系ディストリビューションではパッケージ化とアップグレードが問題になる

  • pipでインストールした場合は部分的に動作する

  • パッケージングの観点では、Kivyはあまり良くない

  • fletというクロスプラットフォームPythonフレームワークが興味深い

    • Flutterで動作し、Flutter/DartのチュートリアルをFletに翻訳できる
    • 使ったことはないが、活発なコミュニティがあり、人気のある言語で魅力的なアプリを書ける
  • Kivyがより広く使われるためには、Pythonのデータサイエンス/機械学習分野との接点が必要である

  • 単一言語のエコシステム内でデータ中心のクロスプラットフォームアプリを構築する方が、複数のAPIやランタイムを使うより複雑さが少ない

  • 単一言語アプローチが有用なアプリの種類は、探索的データサイエンス作業ではない

  • 高性能なインタラクティブグラフィックスが必要な作業でもない

  • アルゴリズムと関連ツールを非技術ユーザーに提供する作業では、Kivyはシンプルさと高速なプロトタイピングで利点を持ちうる

  • SwiftとSwiftUIでiOSアプリを書いた経験がある

  • KivyでiOSアプリを書いてApp Storeに公開した経験がある人の体験談を求めている