Skip to content
KivyMD is a collection of Material Design compliant widgets for use with Kivy, a framework for cross-platform, touch-enabled graphical applications.
Branch: master
Clone or download
HeaTTheatR Merge pull request #73 from adityabhawsingka/patch-1
Edited "inctance" to "instanse"
Latest commit 427d9ef Jul 5, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
demos/kitchen_sink The code is formatted using the "black" utility Jul 3, 2019
kivymd Update Jul 5, 2019
.gitignore Edited Dec 22, 2018 Updated Jul 3, 2019
LICENSE Added new Copyright May 25, 2019 Edit version Jul 3, 2019 The code is formatted using the "black" utility Jul 3, 2019


KivyMD is a collection of Material Design compliant widgets for use with Kivy, a framework for cross-platform, touch-enabled graphical applications.

The project's goal is to approximate Google's Material Design spec as close as possible without sacrificing ease of use or application performance.

This library is a fork of the KivyMD project the author of which stopped supporting this project three years ago. We found the strength and brought this project to a new level.

Currently we're in alpha status, so things are changing all the time and we cannot promise any kind of API stability. However it is safe to vendor now and make use of what's currently available.

Join the project! Just fork the project, branch out and submit a pull request when your patch is ready. If any changes are necessary, we'll guide you through the steps that need to be done via PR comments or access to your for may be requested to outright submit them.

If you wish to become a project developer (permission to create branches on the project without forking for easier collaboration), have at least one PR approved and ask for it. If you contribute regularly to the project the role may be offered to you without asking too.


Full documentation yet. Some examples of using KivyMD widgets can be found in our Wiki and in the code of the demo applications


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

Installation and use with Buildozer


  • Kivy version is not less than 1.10.1
  • PIL
  • Python 3 (Python 2 not supported)

How to install

To install KivyMD, clone the project and run the script. The following line works on Linux and Mac OS, other OSes not tested:

sudo python ./ install

Replace "python" with the Python interpreter you want to install KivyMD on (Python 3 is supported)

How to use with Buildozer

If you want to use KivyMD with buildozer, in your buildozer.spec's requirements line you should add the full git HTTPS address, like this example:

requirements = kivy==master,git+

Running on Android

Android 6.0 and higher kitchen_sink-0.98.4-x86.apk or kitchen_sink-0.98.4-armeabi-v7a.apk

Packages for Android are built according to the following instructions:

Download XUbuntu 18.04:

  • Create a new virtual machine based on the downloaded image of XUbuntu

  • Start the XUbuntu virtual machine, open the browser and download this bash script:

    Add execution permissions:

    chmod +x

    ...and run script:

  • Run the script - it will install all the necessary libraries and tools for creating packages for Android

  • Done! Now you have a virtual machine for building Kivy application packages!

  • Or see the instructions here

What's new in version 0.100.2:

API Breaking changes:

  • Moving classes to new modules:
Old New
kivymd.tabs.MDBottomNavigation kivymd.bottomnavigation.MDBottomNavigation
kivymd.updatespinner kivymd.refreshlayout
  • Renamed files, classes and variables:
Old New
kivymd.elevationbehavior kivymd.elevation
kivymd.grid kivymd.imagelists
kivymd.date_picker kivymd.pickers
kivymd.time_picker kivymd.pickers
kivymd.time_picker kivymd.pickers
kivymd.card kivymd.menus
kivymd.snackbar kivymd.snackbars
Toolbar (from kivymd.toolbar) MDToolbar (from kivymd.toolbar)
  • Changed font styles:
Old New
Icon Icon
- Overline
Caption Caption
Button Button
Body2 Body2
Body1 Body1
- Subtitle2
Subhead Subtitle1
Title H6
Headline H5
Display1 H4
Display2 H3
Display3 H2
Display4 H1
  • Colors BlueGrey and Grey renamed to BlueGray and Gray (for better fit MD spec)

Video previous

Image previous

Sister project:

Creator Kivy Project - Wizard for creating a new project for applications written using the Kivy framework


MIT, same as Kivy.

Roboto font is licensed and distributed under the terms of the Apache License, Version 2.0.

Material Design Iconic Font by Sergey Kupletsky covered by the licenses described at

Icons by the community covered by SIL OFL 1.1

You can’t perform that action at this time.