14 puntos por GN⁺ 2024-07-07 | 2 comentarios | Compartir por WhatsApp
  • Framework open source de Python para desarrollar apps GUI que funcionan en múltiples plataformas, incluyendo escritorio, móvil y plataformas embebidas
  • Su objetivo es permitir un diseño de interacción rápido y sencillo, así como prototipado ágil, al mismo tiempo que facilita reutilizar y desplegar código
  • Es fácil de usar y permite desplegar apps en múltiples plataformas con una sola base de código
    • Mac, Linux (incluyendo Raspberry Pi OS), BSD, Windows, iOS, Android
    • Todos los widgets de Kivy soportan multitouch
  • Está escrito en Python y Cython, y se basa en OpenGL ES 2.0
  • Es amigable para negocios (licencia MIT), 100% gratis de usar y desarrollado, soportado y mantenido profesionalmente
  • Es un framework con 10 años de trayectoria y cuenta con un ecosistema amplio
    • Buildozer: herramienta de desarrollo que convierte aplicaciones Python en paquetes binarios para poder instalarlas en múltiples plataformas, incluidos dispositivos móviles
    • Plyer: API de Python independiente de la plataforma para acceder a funciones de hardware en distintas plataformas (Android, iOS, macOS, Linux y Windows)
    • PyJNIus: biblioteca de Python para acceder a clases Java usando JNI (Java Native Interface)
    • Pyobjus: módulo de Python para acceder a clases Objective-C como clases de Python mediante reflexión del runtime de Objective-C
    • Python for Android: herramienta de desarrollo para empaquetar apps de Python como binarios que pueden ejecutarse en dispositivos Android
    • Kivy iOS: toolchain que compila las bibliotecas necesarias para ejecutar aplicaciones Kivy en iOS y gestiona la creación de proyectos de Xcode
    • Audiostream: biblioteca con acceso directo a micrófonos y bocinas
    • KivEnt: motor de juegos basado en entidades para Kivy
    • Oscpy: implementación en Python del protocolo de red Open Sound Control (OSC)
    • Garden: widgets y bibliotecas creados y mantenidos por usuarios

2 comentarios

 
cosine20 2024-07-10

Uf......

 
GN⁺ 2024-07-07
Opiniones en Hacker News
  • Hay varios proyectos relacionados con Kivy, y existen herramientas como python-for-android y Plyer

    • python-for-android: herramienta para compilar proyectos de Python para Android
    • Plyer: herramienta que proporciona APIs multiplataforma (notificaciones, hardware, selector de archivos, etc.)
  • KivyMD es una herramienta que implementa Material Design sobre Kivy

  • El equipo de Kivy es amable, y hay experiencia de haberlos conocido en PyCon o FOSDEM

  • El framework Kivy es agradable de usar, y el lenguaje descriptivo llamado kv es muy útil

  • La compilación cruzada puede ser difícil y el tiempo de carga de la app es largo, pero funciona

  • En comparación con frameworks grandes como Qt, le faltan algunas funciones; no tiene WebView y la accesibilidad es deficiente

  • En general es un proyecto muy bueno, pero da pena que no sea más conocido

  • A partir de 2024, las capturas de pantalla de la galería de Kivy no resultan atractivas

  • Electron sigue pareciendo el rey de las interfaces de usuario de "escritorio"

  • No hay mención de accesibilidad en el sitio, y parece que todavía no está implementada

  • Kivy no es adecuado para aplicaciones orientadas al usuario final

  • Es decepcionante que los nuevos frameworks de UI tengan carencias en funciones de accesibilidad

  • La página principal de Kivy menciona más el financiamiento que el framework en sí

  • Solo hay una imagen que muestra la UI, y el estilo parece una foto de stock

  • Se puede acceder a la galería mediante el enlace superior

  • JavaFX también sigue siendo excelente, y hay una app que funciona bien con un heap de 50 MB

  • También ofrece instaladores nativos del sistema operativo, pero no tiene soporte web

  • Kivy fue el proyecto que llevó a hacer la primera contribución de código abierto en 2014

  • Se envió soporte para archivos de Kivy a Vim, y se trabajó con Bram Moolenaar por correo electrónico mediante parches diff

  • Se expresan condolencias por Bram Moolenaar

  • Katrain usa Kivy, y en distribuciones rolling release hay problemas con el empaquetado y las actualizaciones

  • Al instalar con pip funciona parcialmente

  • Desde la perspectiva del empaquetado, Kivy no es bueno

  • Resulta interesante un framework multiplataforma de Python llamado flet

    • Está impulsado por Flutter, y los tutoriales de Flutter/Dart pueden traducirse a Flet
    • No se ha usado personalmente, pero tiene una comunidad activa y permite escribir apps geniales con un lenguaje popular
  • Para que Kivy se use más ampliamente, tendría que conectarse con el ámbito de ciencia de datos/machine learning de Python

  • Construir apps multiplataforma centradas en datos dentro de un ecosistema de un solo lenguaje es menos complejo que usar varias APIs y runtimes

  • El tipo de apps para el que el enfoque de un solo lenguaje es útil no son los trabajos exploratorios de ciencia de datos

  • Tampoco lo son los trabajos que requieren gráficos interactivos de alto rendimiento

  • En tareas de poner algoritmos y herramientas relacionadas a disposición de usuarios no técnicos, Kivy puede tener ventaja por su simplicidad y rapidez para prototipar

  • Hay experiencia escribiendo apps para iOS con Swift y SwiftUI

  • Se pide compartir experiencias de alguien que haya escrito una app para iOS con Kivy y la haya publicado en la App Store