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.8.0, released on Jan 30th, 2014. Read the Changelog.

Operating System File Instructions Size
Windows 7 Windows 7, 8 (32/64 bit) Kivy-1.8.0-py2.7-win32.zip (Mirror)
Kivy-1.8.0-py3.3-win32.zip (Mirror)
Installation for Windows 126MB
129MB
MacOSX Mac OS X 10.7, 10.8, 10.9
(requires Python 2.7)
Kivy-1.8.0-osx.dmg (Mirror) Installation for MacOSX 34 Mb
Linux Linux (tested Ubuntu > 13.04, 32/64 bit, Maegia, Arch) Kivy-1.8.0.tar.gz Installation for Ubuntu 13 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.1
One-Click-Installation for 12.3
One-Click-Installation for 12.2
One-Click-Installation for Tumbleweed

Installation-guide for OpenSuSE

Unknown
Fedora Fedora

Repository for Fedora 18
Repository for Fedora 17
Repository for Fedora 16

Installation-guide for Fedora

Unknown
Mandriva Fedora

Repository for Mandriva 2011

No documentation available Unknown
Android Android (>= 2.2, with OpenGL ES 2) Kivy Laucher 1.7.1 ( APK ) Packaging for Kivy Launcher 13 Mb
Meego Meego Kivy COBS Packages 12 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.

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

Commercial Support

Available soon.

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.
  • Thomas
    He holds a BSc in Computer Science, pursues a PhD and co-founded fresk, a company using Kivy. He lives in the US.
    On IRC, he's hansent.
  • 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.
  • Brian
    He is a mobile/web developer for Gitwit Creative, a US-based product development firm.
    On IRC he's knapper_tech.
  • Jeff
    He has a Ph.D. in geology/paleontology, and has taught many Earth Science courses. He likes py and js programming. He lives in Louisiana. On IRC, he's geojeff.
  • 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 graduate student 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 a 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.

Contributors
  • Terje Skjaeveland (bionoid)
  • George Sebastian (georgs)
  • Gabriel Ortega
  • Arnaud Waels (triselectif)
  • Thomas Hirsch
  • Joakim Gebart
  • Rosemary Sebastian
  • Jonathan Schemoul
Special thanks to
  • 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 / MacOSX and Ubuntu + building the HTML and PDF documentation.
  • 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.
  • 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!)