Table Of Contents
Welcome to Kivy¶
Welcome to Kivy’s documentation. Kivy is an open source software library for the rapid development of applications equipped with novel user interfaces, such as multi-touch apps.
We recommend that you get started with Getting Started. Then head over to the Programming Guide. We also have Create an application if you are impatient.
You are probably wondering why you should be interested in using Kivy. There is a document outlining our Philosophy that we encourage you to read, and a detailed Architectural Overview.
If you want to contribute to Kivy, make sure to read Contributing. If your concern isn’t addressed in the documentation, feel free to Contact Us.
- Kivy Project
- Programming Guide
- Tutorials
- API Reference
- Kivy framework
- Animation
- Application
- Atlas
- Kivy Base
- Cache manager
- Clock object
- Compatibility module for Python 2.7 and >= 3.4
- Configuration object
- Context
- Core Abstraction
- Audio
- Camera
- Clipboard
- OpenGL
- Image
- Spelling
- Text
- Text Markup
- Text layout
- Video
- Window
- Kivy module for binary dependencies.
- Effects
- Damped scroll effect
- Kinetic effect
- Opacity scroll effect
- Scroll effect
- Event dispatcher
- Factory object
- Garden
- Geometry utilities
- Gesture recognition
- Graphics
- CGL: standard C interface for OpenGL
- Graphics compiler
- Context management
- Context instructions
- Framebuffer
- GL instructions
- Canvas
- OpenGL
- OpenGL utilities
- Scissor Instructions
- Shader
- Stencil instructions
- SVG
- Tesselator
- Texture
- Transformation
- Input management
- Motion Event Factory
- Motion Event
- Input Postprocessing
- Calibration
- Dejitter
- Double Tap
- Ignore list
- Retain Touch
- Triple Tap
- Motion Event Provider
- Providers
- Android Joystick Input Provider
- Native support for HID input from the linux kernel
- Leap Motion - finger only
- Native support of Wacom tablet from linuxwacom driver
- Native support of MultitouchSupport framework for MacBook (MaxOSX platform)
- Mouse provider implementation
- Native support for Multitouch devices on Linux, using libmtdev.
- Auto Create Input Provider Config Entry for Available MT Hardware (linux only).
- TUIO Input Provider
- Common definitions for a Windows provider
- Support for WM_PEN messages (Windows platform)
- Support for WM_TOUCH messages (Windows platform)
- Input recorder
- Motion Event Shape
- Interactive launcher
- Kivy Language
- Builder
- Parser
- External libraries
- DDS File library
- GstPlayer
- Python mtdev
- Asynchronous data loader
- Logger object
- Metrics
- Modules
- Console
- Inspector
- JoyCursor
- Keybinding
- Monitor module
- Recorder module
- Screen
- Touchring
- Web Debugger
- Multistroke gesture recognizer
- Network support
- UrlRequest
- Parser utilities
- Properties
- Resources management
- Storage
- Dictionary store
- JSON store
- Redis Store
- Support
- Tools
- Packaging
- Pyinstaller hooks
- Widgets
- Accordion
- Action Bar
- Anchor Layout
- Behaviors
- Button Behavior
- Code Navigation Behavior
- Compound Selection Behavior
- Cover Behavior
- Drag Behavior
- Emacs Behavior
- Focus Behavior
- Kivy Namespaces
- ToggleButton Behavior
- Touch Ripple
- Box Layout
- Bubble
- Button
- Camera
- Carousel
- CheckBox
- Code Input
- Color Picker
- Drop-Down List
- EffectWidget
- FileChooser
- Float Layout
- Gesture Surface
- Grid Layout
- Image
- Label
- Layout
- ModalView
- PageLayout
- Popup
- Progress Bar
- RecycleBoxLayout
- RecycleGridLayout
- RecycleLayout
- RecycleView
- RecycleView Data Model
- RecycleView Layouts
- RecycleView Views
- Relative Layout
- reStructuredText renderer
- Sandbox
- Scatter
- Scatter Layout
- Screen Manager
- ScrollView
- Settings
- Slider
- Spinner
- Splitter
- Stack Layout
- Stencil View
- Switch
- TabbedPanel
- Text Input
- Toggle button
- Tree View
- Video
- Video player
- VKeyboard
- Widget class
- Utils
- Vector
- Weak Method
- Weak Proxy
Appendix¶
The appendix contains licensing information and an enumeration of all the different modules, classes, functions and variables available in Kivy.
License¶
Kivy is released and distributed under the terms of the MIT license starting version 1.7.2. Older versions are still under the LGPLv3.
You should have received a copy of the MIT license alongside your Kivy distribution. See the LICENSE file in the Kivy root folder. An online version of the license can be found at:
In a nutshell, the license allows you to use Kivy in your own projects regardless of whether they are open source, closed source, commercial or free. Even if the license doesn’t require it, we would really appreciate when you make changes to the Kivy sourcecode itself, share those changes with us!
For a list of authors, please see the file AUTHORS that accompanies the Kivy source code distribution (next to LICENSE).
Kivy – Copyright 2010-2018, The Kivy Authors.