Kivy - Open source Python library for rapid development of applications
that make use of innovative user interfaces, such as multi-touch apps.
Cross platform
Kivy runs on Linux, Windows, OS X, Android, iOS, and Raspberry Pi. You can run the same code on all supported platforms.
It can natively use most inputs, protocols and devices including WM_Touch, WM_Pen, Mac OS X Trackpad and Magic Mouse, Mtdev, Linux Kernel HID, TUIO. A multi-touch mouse simulator is included.
Business Friendly
Kivy is 100% free to use, under an MIT license (starting from 1.7.2) and LGPL 3 for the previous versions. The toolkit is professionally developed, backed and used. You can use it in a commercial product.
The framework is stable and has a well documented API, plus a programming guide to help you get started.
GPU Accelerated
The graphics engine is built over OpenGL ES 2, using a modern and fast graphics pipeline.
The toolkit comes with more than 20 widgets, all highly extensible. Many parts are written in C using Cython, and tested with regression tests.
Become a sponsor !
Usage example
See how easy it is to create a simple Hello World application that shows an actionable button:
from kivy.app import App
from kivy.uix.button import Button
class TestApp(App):
def build(self):
return Button(text='Hello World')
TestApp().run()
Result
Be social !
Download
The current version is 1.10.1, released on July 8th, 2018. Read the Changelog.
Installation instructions can be found here.
Operating System | File | Instructions | Size |
---|---|---|---|
Windows 7, 8, 10 (32/64 bit) | Python 2.7 and 3.4 to 3.7 are supported. Install using pip, follow the instructions here | Installation on Windows | ... |
OS X 10.9 or later |
Install using pip, either using the system python (python2.7), or an installed python from 3.5 to 3.7.
Or install using Kivy.app: |
Installation on macOS | ... |
Linux (Ubuntu, Mageia, Arch, ...) | Kivy-1.10.1.tar.gz (Mirror) | Installation on Linux | 23 Mb |
Conda-Forge |
Install using conda with conda-forge:
Supports Windows, OSX, and Ubuntu. |
... | ... |
Ubuntu PPA | 12 Mb | ||
OpenSUSE | ... | ... | |
Fedora | ... | ... | |
Android (>= 2.2, with OpenGL ES 2) | Kivy Laucher 1.9.0 ( APK ) | Packaging for Kivy Launcher | 13 Mb |
Raspberry Pi | KivyPie - Image for Raspberry Pi containing Kivy | Installation on Raspberry Pi | 532 Mb |
Slackware | SlackBuilds - Downloads for installing Kivy on Slackware | Installation on SlackWare | ... |
Android
Demo examples are published on Google Play:
Create your own APK by following the documentation on Packaging for Android
IOS
Read the documentation on Packaging for IOS
Source code
git clone https://github.com/kivy/kivy
Take a look at our guide toinstallation of the development version.
Documentation
- Getting started with Kivy
- API Reference
- Or see the Wiki for a list of projects, snippets and more
Community Support
- Report a bug or request a feature in our issue tracker
- Ask your questions on the Kivy users forums
- Or send an email to kivy-users@googlegroups.com
You can also try to contact us on Discord (online chat), but make sure to read the Discord rules before joining. Connect to Discord
Licenses
The Kivy logo was made by Vincent Autin. The logo is placed under
All the screenshots on the website that came from Kivy's examples are under the Public Domain.
All the screenshots in the Gallery are from their respective owners. Contact them first if you want to use the content.
About us
Kivy is a community project, led by professional software developers. We are responsible for developing and supporting Kivy, alongside of the community. We also work for companies that use Kivy for their professional products.
- Core developers
-
-
He became a programming expert from working in IT for years before starting with Kivy. He's French, and founded Melting Rocks.
On IRC, he's tito. -
Gabriel PettierHe is an Information Systems engineer and working at Tangible Display, an NUI/innovative interactions company. He lives in France.
On IRC, he's tshirtman. -
He is a freelance developer. He is from India.
On IRC, he's qua-non. -
He is an independent game developer who is very interested in creating game development tools for Android. He lives in Utah.
On IRC, he's kovak. -
He is a postdoc in physics, with a little time to make fun graphical interfaces. He lives in the UK.
On IRC, he's inclement. -
Matthew EinhornHe is a developer using Kivy with Python to automate scientific research. He lives in the eastern USA.
On IRC, he's matham. -
Richard LarkinRichard is an educational software developer (B.Sc, Hons) from South Africa. He likes being silly, meditating, music and hugging fluffy things. On IRC, he's ZenCODE.
-
Armin SebastianHe is an independent developer from the Carpathian wilderness.
On IRC, he's dessant. -
Thomas-Karl PietrowskiPython developer and Debian/Ubuntu package creator, who publishes new, interessant projects or other software in his PPAs on launchpad.net
On IRC, he's thopiekar, but you should prefer contacting him by mail. -
Peter BadidaHe is a hobby coder, bookworm and pianist, who fancies portability and simplicity. He lives in Eastern Slovakia.
On IRC, he's KeyWeeUsr. -
Linux geek and open source addict, he works as a software architect and lives in Spain.
On IRC, he's AndreMiras.
-
- Contributors
-
-
Terje Skjaeveland (bionoid)
-
George Sebastian (georgs)
-
Gabriel Ortega
-
Arnaud Waels (triselectif)
-
Thomas Hirsch
-
Joakim Gebart
-
Rosemary Sebastian
-
Jonathan Schemoul
-
- Past core developers
-
- Thomas Hansen (hansent)
- Christopher Denter (dennda)
- Edwin Marshall (aspidites)
- Jeff Pittman (geojeff)
- Brian Knapp (knappador)
- Ryan Pessa (kived)
- Ben Rousch (brousch)
- Special thanks
-
- Mark Hembrow, who was one of our first sponsor, by giving us a Mac Mini. Which was used for all the build system: unit test on Windows / OS X and Ubuntu + building the HTML and PDF documentation.
- Vincent Autin for his work as a designer for the project, specially on the logo.
Many people have contributed to Kivy and we're always interested in growing our community. If you want to help in terms of writing code, improving documentation, testing, etc. or simply making a donation, please do not hesitate to contact us.
Talks
Here is a list of talks about Kivy (if you have made a talk, don't hesitate to share it)
-
Interfaces tactiles et mobiles avec Kivy.
(slides)
15 April 2017 - Robert Niederreiter
Meetup Innsbruck, Austria
-
Interfaces tactiles et mobiles avec Kivy.
(slides)
27 Octobre 2013 - Gabriel Pettier
Pycon-fr, Strasbourg, France
-
Our journey to Kivy
(slides)
3 Octobler 2013 - Richard Larkin
PyconZA 2013 in Cape Town, South Africa
-
Utah Python August 2013 meeting
8 August 2013 - Jacob Kovac
Utah Python August 2013 meeting
-
Kivy Intro and Tutorial
2 March 2013 - Ben Rousch
GrDevDay 2013 in Grad Rapids, MI, USA. -
OpenGL and Python on computer and embed devices
(slides)
24 July 2012 - Mathieu Virbel
EuroPython 2012 in Florence, Italia. -
Kivy - Python UI Library for Any OS
28 April 2012 - Rokas Aleksiūnas
PyCon LT 2012 in Vilnius -
NIU en Python: Kivy
(Starting at 2:28:00 in the video)
28 November 2011, Gabriel Pettier
La Cantine in Paris, France -
Spaß mit Natural User Interfaces und Python
October 2011 - Ernesto Rico Schmidt
PyCon DE 2011 -
Quick Multitouch Apps using Kivy and Python
September 2011 - KP Singh (kpsfoo), N Chadha
PyCon India 2011 -
GLES2 Python framework for NUI
19 July 2011 - Mathieu Virbel
RMLL 2011 in Strasbourg, France -
Lightning talk about Kivy
22 June 2011 - Mathieu Virbel
Europython 2011 in Florence, Italia