$npx skillfedfor your agent

Kivy

An open-source Python framework for developing GUI apps that work cross-platform, including desktop, mobile and embedded platforms.

With conditionsPyPI Application FrameworksReleased Dec 2024279.3K downloads / moMITPlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — Kivy-2.3.1-cp310-cp310-macosx_10_15_universal2.whl · Kivy-2.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl · Kivy-2.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
v2.3.1 · released 2024-12-26 · Python >=3.8 · 9 runtime deps: Kivy-Garden, docutils, pygments, requests, filetype, kivy-deps.angle, kivy-deps.sdl2, kivy-deps.glew

Yes, if you need to build cross-platform GUIs in Python and are willing to manage platform-specific dependencies. Kivy is production-stable, actively maintained, and has no known vulnerabilities. The medium install friction is a trade-off for genuine code reuse across desktop and mobile. Not recommended if you need native platform look-and-feel or tight integration with platform-specific APIs—consider platform-specific frameworks for those cases.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires system graphics libraries (OpenGL ES 2.0 support); on Windows, kivy-deps.angle, kivy-deps.sdl2, and kivy-deps.glew are installed automatically but may need Visual C++ redistributables.
  • Medium install friction due to compiled dependencies (SDL2, GLEW, ANGLE on Windows) and platform-specific wheels.
  • Actively maintained with recent commits; production-stable status and 18992 repository stars indicate solid community backing.

License · maintenance · safety

MIT (permissive) — MIT license permits commercial and private use with minimal restrictions. Bundled fonts (Roboto, DejaVuSans) and UI design elements carry separate Apache 2.0 and LGPLv2.1 licenses, which do not restrict your own code.

last release 2024-12-26 (596 days) · last repo commit 2026-08-14 · 18,992 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 279,341 downloads/mo, #8,122 on PyPI

Verify before relying

pip install Kivy

from kivy.app import App
from kivy.uix.label import Label

class HelloApp(App):
    def build(self):
        return Label(text='Hello Kivy')

if __name__ == '__main__':
    HelloApp().run()
  • Performance characteristics and memory footprint for complex UIs or large datasets
  • Maturity and stability of iOS and Android deployment workflows via companion tools
  • Real-world app store submission experience and toolchain reliability
Same gist for agents: .md · .json

What it is and what it does

Kivy is a production-stable Python GUI framework built on OpenGL ES 2.0 that lets you write desktop and mobile applications once and deploy them to Windows, macOS, Linux, Android, and iOS. It emphasizes rapid prototyping and code reuse through a unified widget library with native multitouch support. The framework is written in Python and Cython and comes with an extensive, extensible widget set.

You use Kivy to design interactive user interfaces declaratively, bind them to event handlers, and package them for multiple platforms. It handles the platform-specific rendering and input abstraction, so your application logic remains portable. The framework depends on system graphics libraries and platform-specific binary packages (SDL2, GLEW, ANGLE), which are managed through companion packages like kivy-deps.sdl2.

Use it for

  • Build a desktop application in Python that runs identically on Windows, macOS, and Linux without code changes.
  • Develop a mobile app for Android or iOS using Python, avoiding platform-specific languages while sharing core logic.
  • Create a touchscreen interface for embedded systems or kiosks with multitouch gesture support.
  • Prototype interactive data visualization or scientific applications with real-time UI updates.
  • Build games or multimedia applications that require hardware-accelerated graphics and input handling.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need to build cross-platform GUIs in Python and are willing to manage platform-specific dependencies.

Kivy is production-stable, actively maintained, and has no known vulnerabilities. The medium install friction is a trade-off for genuine code reuse across desktop and mobile. Not recommended if you need native platform look-and-feel or tight integration with platform-specific APIs—consider platform-specific frameworks for those cases.

Install

kivy on PyPI

Before you install

Medium install friction due to compiled dependencies (SDL2, GLEW, ANGLE on Windows) and platform-specific wheels. Actively maintained with recent commits; production-stable status and 18992 repository stars indicate solid community backing.

Requires system graphics libraries (OpenGL ES 2.0 support); on Windows, kivy-deps.angle, kivy-deps.sdl2, and kivy-deps.glew are installed automatically but may need Visual C++ redistributables.

License in practice

MIT license permits commercial and private use with minimal restrictions. Bundled fonts (Roboto, DejaVuSans) and UI design elements carry separate Apache 2.0 and LGPLv2.1 licenses, which do not restrict your own code.

Quickstart

pip install Kivy

from kivy.app import App
from kivy.uix.label import Label

class HelloApp(App):
    def build(self):
        return Label(text='Hello Kivy')

if __name__ == '__main__':
    HelloApp().run()

Verify before relying

  • Performance characteristics and memory footprint for complex UIs or large datasets
  • Maturity and stability of iOS and Android deployment workflows via companion tools
  • Real-world app store submission experience and toolchain reliability

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.8
Install frictionMedium. Platform-specific wheel
Runtime dependencies
9 packages
Kivy-Gardendocutilspygmentsrequestsfiletypekivy-deps.anglekivy-deps.sdl2kivy-deps.glewpypiwin32
MaintenanceActively maintained 596 days since the last release
Last repo commit
First released
Downloads279,341 / month, #8,122 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableEnvironment :: MacOS XEnvironment :: Win32 (MS Windows)Environment :: X11 ApplicationsIntended Audience :: DevelopersIntended Audience :: End Users/DesktopIntended Audience :: Information TechnologyIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIX :: BSD :: FreeBSDOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Artistic SoftwareTopic :: Games/EntertainmentTopic :: Multimedia :: Graphics :: 3D RenderingTopic :: Multimedia :: Graphics :: Capture :: Digital CameraTopic :: Multimedia :: Graphics :: PresentationTopic :: Multimedia :: Graphics :: ViewersTopic :: Multimedia :: Sound/Audio :: Players :: MP3Topic :: Multimedia :: Video :: DisplayTopic :: Scientific/Engineering :: Human Machine InterfacesTopic :: Scientific/Engineering :: VisualizationTopic :: Software Development :: Libraries :: Application FrameworksTopic :: Software Development :: User Interfaces

Evidence: Kivy-2.3.1-cp310-cp310-macosx_10_15_universal2.whl; Kivy-2.3.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; Kivy-2.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; Kivy-2.3.1-cp310-cp310-win_amd64.whl; Kivy-2.3.1-cp311-cp311-macosx_10_15_universal2.whl; Kivy-2.3.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; Kivy-2.3.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; Kivy-2.3.1-cp311-cp311-win_amd64.whl; Kivy-2.3.1-cp312-cp312-macosx_10_15_universal2.whl; Kivy-2.3.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; Kivy-2.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; Kivy-2.3.1-cp312-cp312-win_amd64.whl; Kivy-2.3.1-cp313-cp313-macosx_10_15_universal2.whl; Kivy-2.3.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; Kivy-2.3.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; Kivy-2.3.1-cp313-cp313-win_amd64.whl; Kivy-2.3.1-cp38-cp38-macosx_10_15_universal2.whl; Kivy-2.3.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; Kivy-2.3.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; Kivy-2.3.1-cp38-cp38-win_amd64.whl

Tags

Capabilities
cross-platform GUI framework Pythonmobile app development Pythondesktop application frameworkmultitouch UI frameworkPython GUI builder
Topics
cross-platform-guimobile-developmentmultitouch

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “multitouch UI framework”

  • KivyKivy is a Python framework for building graphical user interfaces…
  • prefab-uiPrefab is a Python UI framework for building interactive interfaces…
  • niceguiNiceGUI is a Python framework for building browser-based user…

Give your agent the search over MCP, or paste the wish link into any chat.

More Application Frameworks packages

fastapi Worth it
PyPI · Software Development · released Jul 2026

FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.

MITpure Python · 3.10+
568.6Mdownloads / mo
annotated-doc With conditions
PyPI · Software Development · released Jul 2026

Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.

MITpure Python · 3.9+
456.2Mdownloads / mo
textual Worth it
PyPI · Application Frameworks · released Jun 2026

Textual is a Python framework for building cross-platform user interfaces that run in the terminal or web browser using a modern, component-based API.

Install it if you're developing CLI tools, dashboards, or interactive terminal applications.

MITpure Python
443.6Mdownloads / mo
typer Worth it
PyPI · Software Development · released Aug 2026

Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.

Install it if you are building CLIs in Python.

MITpure Python · 3.10+
369.3Mdownloads / mo
mcp Worth it
PyPI · Application Frameworks · released Jul 2026

Build and connect to Model Context Protocol servers that expose tools, resources, and prompts to LLM applications over stdio, HTTP, or SSE transports.

Install it if you need to build or connect to servers.

MITpure Python · 3.10+
319.3Mdownloads / mo
Werkzeug Worth it
PyPI · Application Frameworks · released Apr 2026

Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.

BSD-3-Clausepure Python · 3.9+
268.1Mdownloads / mo

See also buildozer · pyjnius · PyQt5 · flet-desktop · flet · comictagger · PyQt6 · plyer · imgui-bundle · mobly