14 पॉइंट द्वारा GN⁺ 2024-07-07 | 2 टिप्पणियां | WhatsApp पर शेयर करें
  • डेस्कटॉप, मोबाइल और एम्बेडेड प्लेटफ़ॉर्म सहित क्रॉस-प्लेटफ़ॉर्म पर काम करने वाले GUI ऐप्स विकसित करने के लिए एक ओपन सोर्स Python फ्रेमवर्क
  • इसका लक्ष्य तेज़ और आसान इंटरैक्शन डिज़ाइन और त्वरित प्रोटोटाइपिंग को संभव बनाना है, साथ ही कोड को पुन: उपयोग और डिप्लॉय करने में सक्षम बनाना
  • उपयोग में आसान, और एक ही codebase से कई प्लेटफ़ॉर्म पर ऐप्स डिप्लॉय किए जा सकते हैं
    • Mac, Linux(Raspberry Pi OS सहित), BSD, Windows, iOS, Android
    • सभी Kivy widgets multi-touch को सपोर्ट करते हैं
  • Python और Cython में लिखा गया है और OpenGL ES 2.0 आधारित है
  • business-friendly (MIT license), 100% मुफ़्त उपयोग योग्य, और प्रोफेशनली विकसित, सपोर्टेड और मेंटेन किया जाता है
  • 10 साल पुराना फ्रेमवर्क, जिसके साथ एक समृद्ध ecosystem मौजूद है
    • Buildozer: Python applications को binary packages में बदलने वाला डेवलपमेंट टूल, ताकि उन्हें मोबाइल डिवाइसेज़ सहित कई प्लेटफ़ॉर्म पर इंस्टॉल किया जा सके
    • Plyer: विभिन्न प्लेटफ़ॉर्म (Android, iOS, macOS, Linux और Windows) की हार्डवेयर क्षमताओं तक पहुंच के लिए प्लेटफ़ॉर्म-स्वतंत्र Python API
    • PyJNIus: JNI(Java Native Interface) का उपयोग करके Java classes तक पहुंच के लिए Python library
    • Pyobjus: Objective-C runtime reflection का उपयोग करके Objective-C classes को Python classes के रूप में एक्सेस करने के लिए Python module
    • Python for Android: Python apps को Android डिवाइस पर चल सकने वाली binaries में पैकेज करने वाला डेवलपमेंट टूल
    • Kivy iOS: iOS पर Kivy applications चलाने के लिए आवश्यक libraries को compile करने और Xcode project creation को मैनेज करने वाला toolchain
    • Audiostream: microphone और speaker तक direct access देने वाली library
    • KivEnt: Kivy के लिए entity-based game engine
    • Oscpy: Open Sound Control(OSC) network protocol का Python implementation
    • Garden: users द्वारा बनाए और मेंटेन किए गए widgets और libraries

2 टिप्पणियां

 
cosine20 2024-07-10

उफ़......

 
GN⁺ 2024-07-07
Hacker News की राय
  • Kivy से जुड़े कई प्रोजेक्ट हैं, और python-for-android तथा Plyer जैसे टूल मौजूद हैं

    • python-for-android: Android के लिए Python प्रोजेक्ट compile करने का टूल
    • Plyer: cross-platform API देने वाला टूल (notifications, hardware, file picker आदि)
  • KivyMD, Kivy के ऊपर Material Design को implement करने वाला टूल है

  • Kivy टीम दोस्ताना है, और PyCon या FOSDEM में उनसे मिलने का अनुभव रहा है

  • Kivy framework इस्तेमाल करने में अच्छा है, और kv नाम की declarative language बहुत उपयोगी है

  • cross-compiling मुश्किल हो सकती है, और app loading time लंबा है, लेकिन यह काम करता है

  • Qt जैसे बड़े frameworks की तुलना में इसमें कुछ features की कमी है, WebView नहीं है और accessibility भी अच्छी नहीं है

  • कुल मिलाकर यह बहुत अच्छा project है, लेकिन इसका ज़्यादा प्रसिद्ध न होना अफ़सोसजनक है

  • 2024 के हिसाब से Kivy gallery के screenshots आकर्षक नहीं लगते

  • अभी तक Electron ही "desktop" UI का राजा लगता है

  • साइट पर accessibility का कोई ज़िक्र नहीं है, और लगता है कि यह अभी implement नहीं हुई है

  • Kivy user-facing apps के लिए उपयुक्त नहीं है

  • यह निराशाजनक है कि नए UI frameworks accessibility features में कमज़ोर हैं

  • Kivy की landing page में framework से ज़्यादा funding support का ज़िक्र है

  • UI दिखाने वाली सिर्फ़ एक image है, और उसका style stock photo जैसा लगता है

  • gallery तक ऊपर दिए गए link के ज़रिए पहुँचा जा सकता है

  • JavaFX भी अब भी शानदार है, और 50MB heap पर अच्छे से चलने वाला app मौजूद है

  • native OS installers भी उपलब्ध हैं, लेकिन web support नहीं है

  • Kivy वही project है जिसने 2014 में मुझे पहला open source contribution करने के लिए प्रेरित किया

  • मैंने Vim में Kivy files के लिए support submit किया था, और Bram Moolenaar के साथ email पर patch diff के ज़रिए काम किया था

  • Bram Moolenaar के लिए शोक संवेदना व्यक्त करता हूँ

  • Katrain, Kivy का उपयोग करता है, और rolling release distributions पर packaging तथा upgrades में समस्या आती है

  • pip से install करने पर यह आंशिक रूप से काम करता है

  • packaging के नज़रिए से Kivy अच्छा नहीं है

  • flet नाम का cross-platform Python framework दिलचस्प है

    • यह Flutter पर चलता है, और Flutter/Dart tutorials को Flet में translate किया जा सकता है
    • मैंने इसे इस्तेमाल नहीं किया है, लेकिन इसका community सक्रिय है, और एक लोकप्रिय भाषा में शानदार apps लिखे जा सकते हैं
  • Kivy के ज़्यादा व्यापक रूप से इस्तेमाल होने के लिए इसे Python के data science/machine learning क्षेत्र से जुड़ना चाहिए

  • एक ही language ecosystem के भीतर data-centric cross-platform apps बनाना, कई APIs और runtimes इस्तेमाल करने की तुलना में कम जटिल है

  • single-language approach जिन apps के लिए उपयोगी है, वे exploratory data science tasks नहीं हैं

  • न ही वे काम हैं जिनमें high-performance interactive graphics चाहिए

  • algorithms और संबंधित tools को non-technical users तक पहुँचाने वाले कामों में Kivy को simplicity और rapid prototyping का फ़ायदा मिल सकता है

  • Swift और SwiftUI के साथ iOS apps लिखने का अनुभव है

  • Kivy से iOS app बनाकर App Store पर प्रकाशित करने का अनुभव रखने वाले किसी व्यक्ति से अनुभव साझा करने का अनुरोध है