Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Open source Python framework for creating NUI applications, running on Windows, Linux, OS X, Android and iOS
Python C HTML Objective-C Shell Emacs Lisp Other


Innovative User Interfaces Made Easy.

Kivy is a Python framework for the development of multi-touch enabled media rich applications. 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, OSX, Linux, Android and iOS. All our 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 organisation.

Kivy's Coverage Bountysource

Installation, Documentation and Examples

Extensive installation instructions as well as tutorials and general documentation, including an API reference, can be found at:

An offline version in PDF format is also available. Kivy ships with a bunch of examples that can be found in the examples/ folder.


If you need assistance, you can ask for help on our mailing list:

We also have an IRC channel:

  • Server :
  • Port : 6667, 6697 (SSL only)
  • Channel : #kivy


We love pull requests and discussing novel ideas. Check out our contribution guide ( and feel free to improve Kivy.

The following mailing list and IRC channel are used exclusively for discussions about developing the Kivy framework and its sister projects:

IRC channel:

  • Server :
  • Port : 6667, 6697 (SSL only)
  • Channel : #kivy-dev

Other projects

Have a look at our complementary projects:

  • Buildozer: A robot that will do everything needed to package your application for iOS and Android. Ask him, wait, it's done.
  • Plyer: Library for accessing features of your hardware such as the Accelerometer, Camera etc.
  • Pyjnius: Dynamic access to the Java/Android API from Python? Easy!
  • Pyobjus: Dynamic access to the Objective-C/iOS API from Python (wip).
  • Python for Android: Toolchain for building and packaging Kivy applications into Android APK's.
  • Kivy iOS: Toolchain for building and packaging Kivy applications into iOS IPA's.
  • Audiostream: Library for direct access to the Microphone and Speaker (for iOS and Android).
  • Garden: Explore User's widgets and libraries


  • Kivy is released under the terms of the MIT License. Please refer to the LICENSE file.
  • The provided fonts DroidSans.ttf and DroidSansMono.ttf are licensed and distributed under the terms of the Apache License, Version 2.0.
  • The current UI design has been adapted from Moblintouch theme's SVGs and is licensed under the terms of the LGPLv2.1.
Something went wrong with that request. Please try again.