Cross platform

Kivy runs on Linux, Windows, OS X, Android and iOS. You can run the same code on all supported platforms.

It can use natively 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.



Be social !

Usage example

See how easy it is to create a simple Hello World application that just 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

Result of the example

Download

The current version is 1.9.0, released on Apr 3rd, 2015. Read the Changelog.

Operating System File Instructions Size
Windows 7 Windows 7, 8 (32/64 bit) Kivy-1.9.0-py2.7-win32-x86.exe (Mirror)
Kivy-1.9.0-py2.7-win32-x64.exe (Mirror)
Kivy-1.9.0-py3.4-win32-x86.exe (Mirror)
Kivy-1.9.0-py3.4-win32-x64.exe (Mirror)
Installation for Windows 192MB
191MB
195MB
195MB
MacOSX Mac OS X 10.9, 10.10
(requires Python 2.7)
Kivy-1.9.0-rev3-osx.dmg (Mirror) Installation for MacOSX 73 Mb
Linux Linux (Ubuntu, Mageia, Arch, ...) Kivy-1.9.0.tar.gz (Mirror) Installation for Ubuntu 15 Mb
Ubuntu Ubuntu PPA

Stable PPA
Daily PPA

How to use software from PPA 12 Mb
Opensuse Opensuse

One-Click-Installation for Factory
One-Click-Installation for 13.2
One-Click-Installation for 13.1
One-Click-Installation for Tumbleweed

Installation-guide for OpenSuSE

Unknown
Fedora Fedora

Repository for Fedora 21
Repository for Fedora 20

Installation-guide for Fedora

Unknown
Android Android (>= 2.2, with OpenGL ES 2) Kivy Laucher 1.9.0 ( APK ) Packaging for Kivy Launcher 13 Mb
Raspberry Pi Raspberry Pi KivyPie - Image for Raspberry Pi containing Kivy 532 Mb

Android

Demo examples are published on the Android market:

Create you own APK by following the documentation about Packaging for Android

IOS

We haven't published our demos, but the winner of Kivy game contest #1 have been packaged for IOS: Deflectouch on iTunes.

Read the documentation about Packaging for IOS

Virtual Machine

A Virtual Machine with Android SDK and NDK and all other pre-requisites pre installed to ease apk generation:

Please note that we can't keep the image updated all the time, so if you encounter issues, the first thing to do it to follow instructions on the README file to update it.

Source code

git clone http://github.com/kivy/kivy

Take a look at our instructions on Installation of Development version.

Documentation

Community Support

You can also try to contact us on IRC (online chat), but make sure to read the IRC rules before connecting. Connect to Webchat

Licenses

Kivy logo have been done by Vincent Autin. The logo is placed under

All the screenshots on the website that came from the 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
  • Mathieu
    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
    Gabriel Pettier
    He is an Information Systems engineer and working at Tangible Display, an NUI/innovative interactions company. He lives in France.
    On IRC, he's tshirtman.
  • Akshay
    He is freelance developer. He is from India.
    On IRC, he's qua-non.
  • Ben
    He is a Python, Android, and Linux lover who thinks tablets will be everyone's computer in the future. He lives in Michigan.
    On IRC, he's brousch.
  • kovak
    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.
  • Alexander
    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.
  • Matt
    Matthew Einhorn
    He is a developer using Kivy with Python to automate scientific research. He lives in the eastern USA.
    On IRC, he's matham.
  • Richard
    Richard Larkin
    Richard 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.
  • kived
    Ryan Pessa
    He is a software developer in Kansas City. He enjoys being well-bearded. He has a cat.
    On IRC, he's kived.
  • dessant
    Sebastian Popute
    He is an independent developer from the Carpathian wilderness.
    On IRC, he's dessant.
  • thopiekar
    Thomas-Karl Pietrowski
    Python 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.

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 was one of the initial authors of the framework. Besides his tremendous work on shaping Kivy, including his contributions to the graphics pipeline, he has also supported our annual contests.
  • Christopher Denter (dennda) who was a core-developer in the first stage of the project. He contributed a lot by improving the documentation, implementing the Kivy extension system, pep8 hook and fixes, spelling provider. He also did 1 GSOC on the previous PyMT framework on implementing a virtual keyboard with a better navigation.
  • Edwin Marshall (aspidites) helped with quality and documentation, as well as adding a few features.
  • Jeff Pittman who helped with documentation and features, and have been a core-contributor for a long time, before moving to other adventures.
  • Brian Knapp was a core-developer who created Kivy's interactive launcher and provided many valuable patches for the framework.
Special thanks
  • Mark Hembrow, who is one of our first sponsor, by giving us a Mac Mini. Which is currently 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)