- Framework Python mã nguồn mở để phát triển ứng dụng GUI hoạt động trên nhiều nền tảng, bao gồm desktop, mobile và nền tảng nhúng
- Mục tiêu là cho phép thiết kế tương tác nhanh và dễ dàng, tạo mẫu nhanh, đồng thời hỗ trợ tái sử dụng và triển khai mã
- Dễ sử dụng và có thể triển khai ứng dụng lên nhiều nền tảng chỉ với một codebase duy nhất
- Mac, Linux (bao gồm Raspberry Pi OS), BSD, Windows, iOS, Android
- Tất cả widget của Kivy đều hỗ trợ đa chạm
- Được viết bằng Python và Cython, dựa trên OpenGL ES 2.0
- Thân thiện với doanh nghiệp (giấy phép MIT), miễn phí sử dụng 100%, đồng thời được phát triển, hỗ trợ và bảo trì một cách chuyên nghiệp
- Là framework đã tồn tại 10 năm với hệ sinh thái phong phú
- Buildozer: công cụ phát triển chuyển ứng dụng Python thành gói nhị phân để có thể cài đặt trên nhiều nền tảng, bao gồm cả thiết bị di động
- Plyer: API Python độc lập nền tảng để truy cập các tính năng phần cứng trên nhiều nền tảng khác nhau (Android, iOS, macOS, Linux và Windows)
- PyJNIus: thư viện Python để truy cập các lớp Java bằng JNI (Java Native Interface)
- Pyobjus: mô-đun Python để truy cập các lớp Objective-C như lớp Python bằng cách sử dụng reflection của runtime Objective-C
- Python for Android: công cụ phát triển đóng gói ứng dụng Python thành tệp nhị phân có thể chạy trên thiết bị Android
- Kivy iOS: toolchain biên dịch các thư viện cần thiết để chạy ứng dụng Kivy trên iOS và quản lý việc tạo project Xcode
- Audiostream: thư viện cho phép truy cập trực tiếp vào microphone và loa
- KivEnt: game engine dựa trên entity dành cho Kivy
- Oscpy: hiện thực Python của giao thức mạng Open Sound Control (OSC)
- Garden: widget và thư viện do người dùng tạo và duy trì
2 bình luận
Ặc......
Ý kiến trên Hacker News
Có nhiều dự án liên quan đến Kivy, cùng các công cụ như python-for-android và Plyer
KivyMD là công cụ triển khai Material Design trên nền Kivy
Đội ngũ Kivy rất thân thiện, từng có trải nghiệm gặp họ tại PyCon hoặc FOSDEM
Framework Kivy dễ dùng, và ngôn ngữ mô tả
kvrất hữu íchCross-compiling có thể khó, và thời gian tải ứng dụng dài, nhưng vẫn hoạt động
So với các framework lớn như Qt, nó thiếu một vài tính năng, không có WebView và khả năng accessibility chưa tốt
Nhìn chung đây là một dự án rất tốt, nhưng đáng tiếc là chưa được biết đến rộng rãi hơn
Tính đến năm 2024, ảnh chụp màn hình trong gallery của Kivy không hấp dẫn
Electron hiện tại có vẻ vẫn là vua của UI "desktop"
Không thấy nhắc đến accessibility trên trang web, có vẻ như vẫn chưa được triển khai
Kivy không phù hợp cho các ứng dụng hướng tới người dùng cuối
Thật đáng thất vọng khi các framework UI mới còn thiếu các tính năng accessibility
Landing page của Kivy nhắc đến tài trợ nhiều hơn là chính framework này
Chỉ có một hình ảnh hiển thị UI, và phong cách của nó trông như ảnh stock
Có thể truy cập gallery qua liên kết ở phía trên
JavaFX vẫn rất tuyệt, và có ứng dụng chạy tốt với heap 50MB
Cũng cung cấp trình cài đặt native cho hệ điều hành, nhưng không hỗ trợ web
Kivy là dự án đã khiến người viết thực hiện đóng góp mã nguồn mở đầu tiên vào năm 2014
Đã gửi hỗ trợ tệp Kivy cho Vim, và làm việc với Bram Moolenaar qua email bằng patch diff
Xin gửi lời tiếc thương tới Bram Moolenaar
Katrain sử dụng Kivy, nhưng việc đóng gói và nâng cấp trên các bản phân phối rolling release là vấn đề
Khi cài bằng pip thì nó hoạt động một phần
Xét từ góc độ đóng gói, Kivy không tốt
Một framework Python đa nền tảng tên là flet khá thú vị
Để Kivy được dùng rộng rãi hơn, nó cần gắn kết với lĩnh vực khoa học dữ liệu/machine learning của Python
Xây dựng ứng dụng đa nền tảng thiên về dữ liệu trong một hệ sinh thái đơn ngôn ngữ sẽ ít phức tạp hơn so với việc dùng nhiều API và runtime
Loại ứng dụng mà cách tiếp cận đơn ngôn ngữ hữu ích không phải là các công việc khoa học dữ liệu mang tính khám phá
Cũng không phải các công việc cần đồ họa tương tác hiệu năng cao
Trong các công việc đưa thuật toán và công cụ liên quan đến người dùng không chuyên, Kivy có thể có lợi thế nhờ sự đơn giản và khả năng tạo prototype nhanh
Có kinh nghiệm viết ứng dụng iOS bằng Swift và SwiftUI
Muốn nghe chia sẻ kinh nghiệm từ những người đã viết ứng dụng iOS bằng Kivy và đưa lên App Store