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. This library is a fork of the
KivyMD project. We found the strength and
brought this project to a new level.
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.
Installation
pip install kivymd==1.2.0
Dependencies:
How to install
Command above will install latest release version of KivyMD from
PyPI.
If you want to install development version from
master
branch, you should specify link to zip archive:
pip install https://github.com/kivymd/KivyMD/archive/master.zip
Tip: Replace master.zip
with <commit hash>.zip
(eg 51b8ef0.zip
) to
download KivyMD from specific commit.
Also you can install manually from sources. Just clone the project and run pip:
git clone https://github.com/kivymd/KivyMD.git --depth 1
cd KivyMD
pip install .
Speed Tip: If you don't need full commit history (about 1.14 GiB), you can
use a shallow clone (git clone https://github.com/kivymd/KivyMD.git --depth 1
)
to save time. If you need full commit history, then remove --depth 1
.
How to fix a shader bug on an android device
Use Kivy
from master branch or Kivy
>= 2.2.0
and KivyMD
(from master branch):
pip install https://github.com/kivy/kivy/archive/master.zip
pip install https://github.com/kivymd/KivyMD/archive/master.zip
And use with Buildozer
:
requirements = kivy==master, https://github.com/kivymd/KivyMD/archive/master.zip
requirements = kivy==2.2.0, kivymd==1.2.0
This will download latest release version of KivyMD from PyPI.
If you want to use development version from master
branch, you should specify link to zip archive:
requirements = kivy==2.1.0, https://github.com/kivymd/KivyMD/archive/master.zip
Do not forget to run buildozer android clean
or remove .buildozer
directory
before building if version was updated (Buildozer doesn't update already
downloaded packages).
On Linux
On Windows 10
Build automatically via GitHub Actions
toolchain build python3 kivy pillow
toolchain pip install --no-deps kivymd
Documentation
Demos
Kitchen sink app demonstrates every KivyMD widget.
You can see how to use widget in code of app.
Comparison of Flutter & KivyMD
Sky View Concept | Healthy Food Delivery |
---|
| |
Asics Shoes Concept | Facebook Desktop Redesign |
| |
Use MVC and Hot Reload
Support
If you need assistance or you have a question, you can ask for help on our mailing list:
Settings
Promo Video
Contributing
We always welcome your Bug reports,
Feature requests
and Pull requests!
Check out CONTRIBUTING.md
and feel free to improve KivyMD.
Setup environment
We recommend you to use PyCharm to work with KivyMD code. Install
Kivy and
development dependencies to your virtual environment:
pip install -e .[dev,docs]
pre-commit install
Format all files and run tests:
pre-commit run --all-files
pytest kivymd/tests --timeout=600 --cov=kivymd --cov-report=term
pre-commit will format modified files with Black and sort imports with isort.
Sister projects
KivyMD Extensions
Additional extensions for the KivyMD library.
https://github.com/kivymd-extensions
KivyMDBuilder
Build apps visually.
https://github.com/kivymd/KivyMDBuilder
License
Contributors
KivyMD Team
They spent a lot of time to improve KivyMD.
- Yuri Ivanov @HeaTTheatR - Core developer
- Artem Bulgakov @ArtemSBulgakov - Technical administrator, contributor
- Andrés Rodríguez @mixedCase - First author of KivyMD project, contributor
Code Contributors
This project exists thanks to all the people who contribute.
How to contribute
Financial Contributors
Become a financial contributor
on OpenCollective and help us sustain our community.
Become a Gold Sponsor
and get your logo on our Readme with a link to your website.
Backers
Become a Backer if you want to help develop this project.