- Open-Source-Python-Framework zur Entwicklung von GUI-Apps, die plattformübergreifend funktionieren, einschließlich Desktop-, Mobil- und Embedded-Plattformen
- Ziel ist es, schnelles und einfaches Interaktionsdesign sowie Rapid Prototyping zu ermöglichen und gleichzeitig Code-Wiederverwendung und Deployment zu unterstützen
- Einfach zu verwenden, und Apps können mit einer einzigen Codebasis auf mehreren Plattformen bereitgestellt werden
- Mac, Linux (einschließlich Raspberry Pi OS), BSD, Windows, iOS, Android
- Alle Kivy-Widgets unterstützen Multitouch
- Geschrieben in Python und Cython, basierend auf OpenGL ES 2.0
- Business-freundlich (MIT-Lizenz), zu 100 % kostenlos nutzbar und professionell entwickelt, unterstützt und gepflegt
- Ein 10 Jahre altes Framework mit einem umfangreichen Ökosystem
- Buildozer: Entwicklungstool, das Python-Anwendungen in Binärpakete umwandelt, damit sie auf mehreren Plattformen einschließlich Mobilgeräten installiert werden können
- Plyer: Plattformunabhängige Python-API für den Zugriff auf Hardware-Funktionen verschiedener Plattformen (Android, iOS, macOS, Linux und Windows)
- PyJNIus: Python-Bibliothek für den Zugriff auf Java-Klassen mithilfe von JNI (Java Native Interface)
- Pyobjus: Python-Modul für den Zugriff auf Objective-C-Klassen als Python-Klassen mithilfe von Objective-C-Runtime-Reflection
- Python for Android: Entwicklungstool zum Verpacken von Python-Apps als Binärdateien, die auf Android-Geräten ausgeführt werden können
- Kivy iOS: Toolchain, die die für das Ausführen von Kivy-Anwendungen unter iOS erforderlichen Bibliotheken kompiliert und die Erstellung von Xcode-Projekten verwaltet
- Audiostream: Bibliothek mit direktem Zugriff auf Mikrofon und Lautsprecher
- KivEnt: Entity-basiertes Game-Engine für Kivy
- Oscpy: Python-Implementierung des Netzwerkprotokolls Open Sound Control (OSC)
- Garden: Widgets und Bibliotheken, die von Nutzern erstellt und gepflegt werden
2 Kommentare
Ugh......
Hacker-News-Kommentare
Es gibt verschiedene Projekte rund um Kivy sowie Tools wie python-for-android und Plyer.
KivyMD ist ein Tool, das Material Design auf Kivy implementiert.
Das Kivy-Team ist freundlich; es gibt Erfahrungen mit Begegnungen auf der PyCon oder der FOSDEM.
Das Kivy-Framework lässt sich gut verwenden, und die Beschreibungssprache
kvist sehr nützlich.Cross-Compilation kann schwierig sein, und die Ladezeit von Apps ist lang, aber es funktioniert.
Im Vergleich zu großen Frameworks wie Qt fehlen einige Funktionen; es gibt kein WebView und die Barrierefreiheit ist schwach.
Insgesamt ein sehr gutes Projekt, aber schade, dass es nicht bekannter ist.
Stand 2024 sind die Screenshots in der Kivy-Galerie nicht attraktiv.
Electron scheint derzeit der König der „Desktop“-UIs zu sein.
Auf der Website gibt es keine Erwähnung von Barrierefreiheit, und sie scheint noch nicht implementiert zu sein.
Kivy eignet sich nicht für Anwendungen mit direktem Endnutzerkontakt.
Es ist enttäuschend, dass neue UI-Frameworks bei Accessibility-Funktionen Defizite haben.
Die Landingpage von Kivy erwähnt Finanzierung stärker als das Framework selbst.
Es gibt nur ein einziges Bild, das die UI zeigt, und der Stil wirkt wie ein Stockfoto.
Die Galerie ist über den Link oben erreichbar.
JavaFX ist ebenfalls weiterhin großartig, und es gibt Apps, die mit 50 MB Heap gut laufen.
Es gibt auch native OS-Installer, aber keine Web-Unterstützung.
Kivy war das Projekt, das 2014 zur ersten Open-Source-Mitwirkung geführt hat.
Es wurde Support für Kivy-Dateien in Vim eingereicht, und an Patch-Diffs wurde per E-Mail mit Bram Moolenaar gearbeitet.
Beileidsbekundung für Bram Moolenaar.
Katrain verwendet Kivy, und auf Rolling-Release-Distributionen sind Packaging und Upgrades problematisch.
Bei Installation per
pipfunktioniert es teilweise.Aus Packaging-Sicht ist Kivy nicht gut.
Ein plattformübergreifendes Python-Framework namens flet ist interessant.
Damit Kivy breiter eingesetzt wird, müsste es stärker mit Pythons Bereichen Data Science und Machine Learning verknüpft werden.
Der Aufbau datenorientierter plattformübergreifender Apps innerhalb eines einsprachigen Ökosystems ist weniger komplex als die Nutzung mehrerer APIs und Runtimes.
Der Single-Language-Ansatz ist nicht für App-Typen nützlich, bei denen es um explorative Data-Science-Arbeit geht.
Auch nicht für Aufgaben, die hochperformante interaktive Grafik erfordern.
Bei Aufgaben, bei denen Algorithmen und zugehörige Tools nichttechnischen Nutzern bereitgestellt werden, könnte Kivy durch Einfachheit und schnelles Prototyping Vorteile haben.
Es gibt Erfahrung mit dem Schreiben von iOS-Apps mit Swift und SwiftUI.
Es wird um Erfahrungsberichte von Personen gebeten, die mit Kivy iOS-Apps geschrieben und im App Store veröffentlicht haben.