๐ŸŒ
Kivy
kivy.org
Kivy: Cross-platform Python Framework for GUI apps Development
Kivy runs on Android, iOS, Linux, macOS and Windows.
Welcome to Kivy
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.
Introduction
Explore: The Kivy framework. Create: A simple cross-platform app.
Getting Started ยป A first App
Immerse yourself in the world of Kivy with your first App.
Installing Kivy
When a wheel is available on pypi.org (โ€œPython Package Indexโ€) it can be installed with pip. For example when you execute python -m pip install kivy in a command line, this will automatically find the appropriate wheel on PyPI.
free and multi-platform graphical library for Python
Kivy is a free and open source Python framework for developing mobile apps and other multitouch application software with a natural user interface (NUI). It is distributed under the terms of the โ€ฆ Wikipedia
Factsheet
Developer Kivy organization
Initial release 1 February 2011; 15 years ago (2011-02-01)
Stable release 2.3.1
/ 26 December 2024; 15 months ago (2024-12-26)
Factsheet
Developer Kivy organization
Initial release 1 February 2011; 15 years ago (2011-02-01)
Stable release 2.3.1
/ 26 December 2024; 15 months ago (2024-12-26)
๐ŸŒ
Real Python
realpython.com โ€บ mobile-app-kivy-python
Build a Mobile Application With the Kivy Python Framework โ€“ Real Python
August 16, 2024 - In this step-by-step tutorial, you'll learn how to build a mobile application with Python and the Kivy GUI framework. You'll discover how to develop an application that can run on your desktop as well as your phone. Then, you'll package your app for iOS, Android, Windows, and macOS.
Discussions

Is Kivy enough for an app?
There are pros and cons with any technology choice; whether using Kivy is a good fit for your project depends on your current skill set, what you want to learn, what you want to accomplish, and so on. Nobody else knows the answer for your situation, including the Kivy naysayers in other comments. There is nothing stopping you from adding auth, login, or whatever you need in the future, but obviously you will need to do it within the Kivy ecosystem, and it has has some limitiations. You may need to do extra work like write wrapper code or modify your build process to use specific libraries which are made for native apps, or depend on compiled code, and so on.. Almost anything can be done, but depending on how deep it is, you may need advanced knowledge of the underlying tech or p4a/kivy-ios, or the platform-specific build toolchains etc. Kivy apps are the same as native apps in terms of how you need to handle versions, releases, etc towards the platform (but the build process to make the .APK/.IPA are different), it mostly boils down to how you write the application code and how you compile it. Edit to add: To me, the biggest downside of Kivy in terms of mobile platforms is the complex build toolchain that in some cases is a bit hacky. There is no warranty that it will keep working with future updates of Android/iOS , although it's been mostly functional for a decade, and afaik there is no reason to think it will stop working... but still, it would worry me for a serious project. For hobby stuff, no big deal. More on reddit.com
๐ŸŒ r/kivy
16
7
November 30, 2023
Is Kivy a viable option for a standard everyday app?

Kivy is not designed for game design. It's designed for standard everyday apps. The impression might get caused by kivy mostly showing games in the gallery, but that's just because a lot of users like to create games. Has nothing to do with the intention of kivy itself :) Another reason why a lot of people think that kivy is heavily designed for games is that it uses pygame as a background service. Most users don't know that kivy just uses pygame to draw on a window. It doesn't even give you the ability to use pygame features yourself. It's basically just a background provider for a drawable surface!

The only problem I see with using kivy for everyday apps is the slow startup. That might be a reason to develop the app in a different language (especially when it's supposed to be an app that you open and close very often each day)

So:

  • Apps that get opened/closed really often -> Might consider switching to a different framework/language. Perhaps the native Java app thing.

  • Apps that you open less often (so you can live with the startup time) or if you don't care about the startup time: use kivy!

More on reddit.com
๐ŸŒ r/Python
60
49
January 22, 2015
Can I make professional mobile application with Kivy?
๐ŸŒ r/kivy
4
1
September 18, 2017
Why don't more people use kivy?
I figured I would post this in Kivy subreddit later, but I'm currently working on a mobile app in Kivy in my spare time. I've got the core application logic done so far and all that is left is 1)spit-shine-polish the interface 2)incorporate ads and 3)package Android/iOS. It's been pretty painless so far, but the worst may be yet to come. I've found some resources much more helpful than others. If I had to recommend three resources for learning/using Kivy they would be: 1) http://kivy.org/docs/gettingstarted/examples.html ->A list of all the examples that come included with the Kivy install. It's been unbelievably helpful to search the page for roughly what I'm looking for and then open up the corresponding example. This saves me a lot of time and means I don't have to guess my way through 30+ examples to find the one I want. 2)This blog: http://karanbalkar.com/tag/kivy/ ->Having not done GUI programming in a long time, this blog really helped me. It's filled to the brim with a number of good, simple, and useful examples. I'd recommend this for anyone trying to create an app in Kivy. 3) The Google Group. https://groups.google.com/forum/embed/?place=forum/kivy-users#!forum/kivy-users ->Odds are good that someone has already asked the Kivy question that you have floating around in your mind. Searching the group has yielded some invaluable information about Kivy specifics and the future of Kivy development. More on reddit.com
๐ŸŒ r/Python
27
15
December 16, 2013
๐ŸŒ
GitHub
github.com โ€บ kivy โ€บ kivy โ€บ wiki โ€บ List-of-Kivy-Projects
List of Kivy Projects
September 18, 2022 - Open source UI framework written in Python, running on Windows, Linux, macOS, Android and iOS - kivy/kivy
Author ย  kivy
๐ŸŒ
LogRocket
blog.logrocket.com โ€บ home โ€บ build an android application with kivy python framework
Build an Android application with Kivy Python framework - LogRocket Blog
June 4, 2024 - If youโ€™re a Python developer thinking about getting started with mobile development, then the Kivy framework is your best bet. With Kivy, you can develop platform-independent applications that compile for iOS, Android, Windows, MacOS, and Linux.
๐ŸŒ
Reddit
reddit.com โ€บ r/kivy โ€บ is kivy enough for an app?
r/kivy on Reddit: Is Kivy enough for an app?
November 30, 2023 -

I am new to app development. I am making an app with Kivy, and I may release it to the app store. If I want to later add features like authentication, login, etc., whatever, are there any other resources I need to my app after it's been made?

Top answer
1 of 3
6
There are pros and cons with any technology choice; whether using Kivy is a good fit for your project depends on your current skill set, what you want to learn, what you want to accomplish, and so on. Nobody else knows the answer for your situation, including the Kivy naysayers in other comments. There is nothing stopping you from adding auth, login, or whatever you need in the future, but obviously you will need to do it within the Kivy ecosystem, and it has has some limitiations. You may need to do extra work like write wrapper code or modify your build process to use specific libraries which are made for native apps, or depend on compiled code, and so on.. Almost anything can be done, but depending on how deep it is, you may need advanced knowledge of the underlying tech or p4a/kivy-ios, or the platform-specific build toolchains etc. Kivy apps are the same as native apps in terms of how you need to handle versions, releases, etc towards the platform (but the build process to make the .APK/.IPA are different), it mostly boils down to how you write the application code and how you compile it. Edit to add: To me, the biggest downside of Kivy in terms of mobile platforms is the complex build toolchain that in some cases is a bit hacky. There is no warranty that it will keep working with future updates of Android/iOS , although it's been mostly functional for a decade, and afaik there is no reason to think it will stop working... but still, it would worry me for a serious project. For hobby stuff, no big deal.
2 of 3
1
In my opinion, Don't use Kivy to develop a serious app. I suggest you use something else. Kivy is too much work, first, you have to make the app with Kivy and then compile it into an Xcode project for IOS or AAB for android which is a lot of work.
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ python โ€บ kivy-tutorial
Kivy Tutorial - GeeksforGeeks
October 4, 2025 - KV language provides a declarative way to define your Kivy UI, separating logic from presentation. This section shows how to create widgets, layouts, animations and screens using KV files. ... Here youโ€™ll find tutorials on drawing apps, calculators, stopwatches and more, applying widgets, layouts and KV language in real-world scenarios. ... Mobile Apps: Games, productivity, or utilities for Android and iOS.
๐ŸŒ
Medium
medium.com โ€บ @chrisgarrett โ€บ getting-started-with-kivy-how-to-code-desktop-and-mobile-apps-with-python-c1b508702a1f
Getting Started with Kivy: How to Code Desktop and Mobile Apps with Python | by Chris Garrett | Medium
April 11, 2023 - Here we simply include the bare minimum required Kivy library features just to output a label with the text of our message. Execution happens from the bottom, where Python checks if we ran the program directly from this python file, and if so launches our App, which we have arbitrarily named Tutorial_1.
Find elsewhere
๐ŸŒ
Medium
medium.com โ€บ @akubuekenechukwu โ€บ is-kivy-the-right-choice-of-framework-for-your-mobile-app-development-1f507b113490
Is Kivy the right choice of framework for your mobile app development? | by Akubue Kenechukwu | Medium
February 6, 2024 - Hey man, look, I havenโ€™t done any benchmark tests yet. So why Kivy? Itโ€™s simple to set up and use. Among all the Frameworks and Programming Languages I have used to build mobile apps, I found Kivy to be the most friendly when it comes to customizing the User Interface to anything you can imagine.
๐ŸŒ
Medium
medium.com โ€บ @Scofield_Idehen โ€บ build-your-first-mobile-application-using-python-kivy-a5f31283e8dc
Build Your First Mobile Application Using Python Kivy. | by Scofield O. Idehen | Medium
June 12, 2024 - While languages like Swift and ... solution with the Kivy framework. Kivy allows you to create native-like applications for desktop, mobile, and even embedded devices, all while leveraging Pythonโ€™s simplicity and ...
๐ŸŒ
Wikipedia
en.wikipedia.org โ€บ wiki โ€บ Kivy_(framework)
Kivy (framework) - Wikipedia
2 weeks ago - Kivy is a free and open source Python framework for developing mobile apps and other multitouch application software with a natural user interface (NUI). It is distributed under the terms of the MIT License, and can run on Android, iOS, Linux, ...
๐ŸŒ
Kivy
kivy.org โ€บ doc โ€บ stable โ€บ guide โ€บ android.html
Kivy on Android โ€” Kivy 2.3.1 documentation
You can run Kivy applications on Android, on (more or less) any device with OpenGL ES 2.0 (Android 2.2 minimum).
๐ŸŒ
Python GUIs
pythonguis.com โ€บ tutorials โ€บ getting started with kivy for gui development in python
Kivy Python Tutorial: Build Your First GUI App (Beginner Guide)
May 31, 2023 - Kivy is an open-source Python library for building graphical user interfaces (GUIs). It supports cross-platform development for the desktop as well as the creation of multi-touch apps for mobile devices.
๐ŸŒ
Generalist Programmer
generalistprogrammer.com โ€บ home โ€บ tutorials โ€บ python โ€บ python kivy tutorial: complete mobile app development guide
Python Kivy Tutorial: Complete Mobile App Development [2025]
August 26, 2025 - Create cross-platform mobile apps with Python Kivy. Step-by-step tutorial covering UI design, events, databases, and deployment for beginners to advanced developers.
๐ŸŒ
Build with Kivy
buildwithkivy.com
Build & Publish Android Apps with Python - Kivy & KivyMD Tutorial
Explore them to see what these libraries can achieve. ... Kivy is a free and open-source Python framework for developing mobile apps and multitouch applications with a natural user interface (NUI).
๐ŸŒ
GeeksforGeeks
geeksforgeeks.org โ€บ python โ€บ kivy-python-framework-for-mobile-app-development
Kivy - Python Framework for Mobile App development - GeeksforGeeks
July 15, 2025 - Kivy is a free and open-source Python library used for developing mobile applications and other multitouch application software with a Natural User Interface. Installation We can download the latest version of Kivy from here.
๐ŸŒ
GitHub
github.com โ€บ kivy โ€บ kivy
GitHub - kivy/kivy: Open source UI framework written in Python, running on Windows, Linux, macOS, Android and iOS ยท GitHub
Kivy is an open-source Python framework for developing GUI apps that work cross-platform, including desktop, mobile and embedded platforms.
Starred by 18.9K users
Forked by 3.1K users
Languages ย  Python 68.6% | Cython 23.0% | C 6.0% | kvlang 0.8% | Shell 0.6% | Objective-C++ 0.5%
๐ŸŒ
Android Authority
androidauthority.com โ€บ home โ€บ kivy python tutorial: build attractive mobile apps in python!
Kivy Python tutorial - Build mobile apps in Python! - Android Authority
February 18, 2021 - This is a Python Kivy tutorial that will show you how to develop cross platform apps with attractive UIs using Kivy and Python!
๐ŸŒ
Udemy
udemy.com โ€บ development
Kivy Python - Building Mobile Apps and Games with Python 3
June 24, 2020 - May be you even know how to code in Python but typically Android apps are created using Java and iOS apps using Swift Here Kivy smoothly slides in and enables you to code once and create applications for not only mobile but also for desktop.
Rating: 4.4 โ€‹ - โ€‹ 41 votes