Description
Innovative user interfaces made easy.
Kivy is an open source, cross-platform Python
framework for the development of applications that make use of innovative,
multi-touch user interfaces.
The aim is to allow for quick and easy interaction design and rapid prototyping
whilst making your code reusable and deployable.
Kivy is written in Python and Cython, based on OpenGL ES
2, supports various input devices and has an extensive widget library. With the
same codebase, you can target Windows, OS X, Linux, Android and iOS. All Kivy
widgets are built with multitouch support.
Kivy is MIT licensed, actively developed by a great community and is supported
by many projects managed by the Kivy Organization.
kivy alternatives and similar packages
Based on the "GUI" category.
Alternatively, view kivy alternatives based on common mentions on social networks and blogs.
-
Textual
Lean TUI application framework for Python. Build sophisticated terminal user interfaces with a simple Python API. Run your apps in the terminal and a web browser. -
PySimpleGUI
Python GUIs for Humans! PySimpleGUI is the top-rated Python application development environment. Launched in 2018 and actively developed, maintained, and supported in 2024. Transforms tkinter, Qt, WxPython, and Remi into a simple, intuitive, and fun experience for both hobbyists and expert users. -
DearPyGui
Dear PyGui: A fast and powerful Graphical User Interface Toolkit for Python with minimal dependencies -
Flet
Flet enables developers to easily build realtime web, mobile and desktop apps in Python. No frontend experience required. -
Eel
DISCONTINUED. A little Python library for making simple Electron-like HTML/JS GUI apps [Moved to: https://github.com/ChrisKnott/Eel] -
wxPython
DISCONTINUED. **Not** โDiscontinuedโ: Per https://wxpython.org/ 4.2.2 Released 2024-09-11 This is a large, active, top-tier GUI-kit for Python (one of the top three). -
Python version of the Atlas toolkit
World's lightest toolkit to quickly and easily add a GUI to your Python programs and bring them online. -
Qt Style Sheet Inspector
A inspector to be able to view and edit Qt style sheet while an application is running -
PyQt
Python bindings for the Qt cross-platform application and UI framework, with support for both Qt v4 and Qt v5 frameworks.
Judoscale - Save 47% on cloud hosting with autoscaling that just works

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of kivy or a related project?
Popular Comparisons
README
Kivy
Innovative user interfaces made easy.
Kivy is an open source, cross-platform Python framework for the development of applications that make use of innovative, multi-touch user interfaces. The aim is to allow for quick and easy interaction design and rapid prototyping whilst making your code reusable and deployable.
Kivy is written in Python and Cython, based on OpenGL ES 2, supports various input devices and has an extensive widget library. With the same codebase, you can target Windows, macOS, Linux, Android and iOS. All Kivy widgets are built with multitouch support.
Kivy is MIT licensed, actively developed by a great community and is supported by many projects managed by the Kivy Organization.
Installation, Documentation and Examples
Extensive installation instructions as well as tutorials and general documentation, including an API reference, can be found at https://kivy.org/docs. A PDF version is also available.
Kivy ships with many examples which can be found in the examples
folder.
Support
If you need assistance, you can ask for help on our mailing list:
- User Group : https://groups.google.com/group/kivy-users
- Email : [email protected]
We also have a Discord channel:
- Server : https://chat.kivy.org
- Channel : #support
Contributing
We love pull requests and discussing novel ideas. Check out our contribution guide and feel free to improve Kivy.
The following mailing list and Discord channel are used exclusively for discussions about developing the Kivy framework and its sister projects:
- Dev Group : https://groups.google.com/group/kivy-dev
- Email : [email protected]
Discord channel:
- Server : https://chat.kivy.org
- Channel : #dev
Sister projects
- Buildozer: generic Python packager for Android and iOS.
- Plyer: platform-independent Python wrapper for platform-dependent APIs.
- Pyjnius: dynamic access to the Java/Android API from Python.
- Pyobjus: dynamic access to the Objective-C/iOS API from Python.
- Python for Android: toolchain for building and packaging Python applications for Android.
- Kivy iOS: toolchain for building and packaging Kivy applications for iOS.
- Audiostream: library for direct access to the microphone and speaker.
- KivEnt: entity-based game engine for Kivy.
- Garden: widgets and libraries created and maintained by users.
- Oscpy: a fast and tested python2/3 implementation of OSC.
Licenses
- Kivy is released under the terms of the MIT License. Please refer to the LICENSE file.
- The provided fonts Roboto and Roboto Mono are licensed and distributed under the terms of the Apache License, Version 2.0. The DejaVuSans (used for the virtual keyboard) license can be viewed here.
- The current UI design has been adapted from Moblintouch theme's SVGs and is licensed under the terms of the LGPLv2.1.
Contributors
This project exists thanks to all the people who contribute. [[Contribute](.github/CONTRIBUTING.md)].
Backers
Thank you to all our backers! ๐ [Become a backer]
Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
*Note that all licence references and agreements mentioned in the kivy README section above
are relevant to that project's source code only.