Kivy

用 Python 编写的开源 UI 框架,可在 Windows、Linux、macOS、Android 和 iOS 上运行。「Open source UI framework written in Python, running on Windows, Linux, macOS, Android and iOS」

Github星跟踪图

Kivy

创新的用户界面使操作变得简单。

Kivy 是一个开放源代码、跨平台的 Python 框架,用于开发利用创新的多点触控用户界面的应用程序。 目的是允许快速轻松的交互设计和快速原型制作,同时使您的代码可重用和部署。

Kivy 用 Python 和 Cython 编写,基于 OpenGL ES 2,支持各种输入设备,并具有丰富的小部件库。 使用相同的代码库,您的目标系统可以是 Windows、macOS、Linux、Android 和 iOS。 所有 Kivy 小部件都具有多点触控支持。

Kivy 是 MIT 许可的,由一个伟大的社区积极开发,并得到 Kivy 组织管理的许多项目的支持。

安装,文档和示例

可以在 https://kivy.org/docs 上找到大量的安装说明以及教程和常规文档,包括 API 参考。 也提供 PDF 版本

Kivy 附带了许多示例,可以在 examples 文件夹中找到它们。

支持

如果您需要帮助,可以在我们的邮件列表中寻求帮助:

我们还有一个 Discord 频道:

贡献

我们喜欢提出要求并讨论新颖的想法。 查看我们的贡献指南,随时改善 Kivy。
以下邮件列表和Discord通道专门用于讨论开发 Kivy 框架及其姊妹项目:

Discord 频道:

姊妹项目

  • Buildozer:适用于 Android 和 iOS 的通用 Python packager。
  • Plyer:平台无关的 API 的平台无关的 Python wrapper。
  • Pyjnius:从 Python 动态访问 Java/Android API。
  • Pyobjus:从 Python 动态访问 Objective-C/iOS API。
  • Python for Android:用于为 Android 构建和打包 Python 应用程序的工具链。
  • Kivy iOS:用于为 iOS 构建和打包 Kivy 应用的工具链。
  • Audiostream:用于直接访问麦克风和扬声器的库。
  • KivEnt:用于 Kivy 的基于实体的游戏引擎。
  • Garden:用户创建和维护的小部件和库。
  • Oscpy:OSC 的快速且经过测试的 python 2/3 实现。

许可

Kivy 是根据 MIT 许可条款发布的。 请参考许可文件。

所提供的字体 Roboto 和 Roboto Mono 是根据 Apache 许可版本2.0 的条款许可和分发的。 可以在此处查看 DejaVuSans(用于虚拟键盘)许可证。

当前的 UI 设计已改编自 Moblintouch 主题的 SVG,并根据 LGPLv2.1 的条款获得许可。

(The first version translated by vz on 2020.07.15)

主要指标

概览
名称与所有者kivy/kivy
主编程语言Python
编程语言Python (语言数: 13)
平台Android, iOS, Linux, Mac, Windows
许可证MIT License
所有者活动
创建于2010-11-03 20:27:32
推送于2025-05-19 13:48:28
最后一次提交2025-05-18 09:38:14
发布数53
最新版本名称2.3.1 (发布于 2024-12-26 16:50:36)
第一版名称1.0.0-alpha (发布于 )
用户参与
星数18.3k
关注者数602
派生数3.1k
提交数13k
已启用问题?
问题数5140
打开的问题数711
拉请求数3047
打开的拉请求数108
关闭的拉请求数708
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?

Kivy

Innovative user interfaces made easy.

Kivy is an open source, cross-platform Python
framework for the development of applications that make use of innovative,
multi-touch user interfaces.
The aim is to allow for quick and easy interaction design and rapid prototyping
whilst making your code reusable and deployable.

Kivy is written in Python and Cython, based on OpenGL ES
2, supports various input devices and has an extensive widget library. With the
same codebase, you can target Windows, macOS, Linux, Android and iOS. All Kivy
widgets are built with multitouch support.

Kivy is MIT licensed, actively developed by a great community and is supported
by many projects managed by the Kivy Organization.

Bountysource
Backers on Open Collective
Sponsors on Open Collective

Coverage Status
Windows Unittests Status
Ubuntu Unittests Status
OSX Unittests Status
Windows wheels Status
Manylinux wheels Status
Raspberry Pi wheels Status
OSX wheels Status

Installation, Documentation and Examples

Extensive installation instructions as well as tutorials and general
documentation, including an API reference, can be found at https://kivy.org/docs.
A PDF version is also available.

Kivy ships with many examples which can be found in the examples folder.

Support

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

We also have a Discord channel:

Contributing

We love pull requests and discussing novel ideas. Check out our
contribution guide and
feel free to improve Kivy.

The following mailing list and Discord channel are used exclusively for
discussions about developing the Kivy framework and its sister projects:

Discord channel:

Sister projects

  • Buildozer: generic Python packager
    for Android and iOS.
  • Plyer: platform-independent Python wrapper
    for platform-dependent APIs.
  • Pyjnius: dynamic access to the Java/Android
    API from Python.
  • Pyobjus: dynamic access to the
    Objective-C/iOS API from Python.
  • Python for Android: toolchain
    for building and packaging Python applications for Android.
  • Kivy iOS: toolchain for building and
    packaging Kivy applications for iOS.
  • Audiostream: library for direct access
    to the microphone and speaker.
  • KivEnt: entity-based game engine for Kivy.
  • Garden: widgets and libraries created and
    maintained by users.
  • Oscpy: a fast and tested python2/3
    implementation of OSC.

Licenses

  • Kivy is released under the terms of the MIT License. Please refer to the
    LICENSE file.
  • The provided fonts Roboto and Roboto Mono are licensed and
    distributed under the terms of the
    Apache License, Version 2.0.
    The DejaVuSans (used for the virtual keyboard) license can be viewed
    here.
  • The current UI design has been adapted from Moblintouch theme's SVGs
    and is licensed under the terms of the
    LGPLv2.1.

Contributors

This project exists thanks to all the people who contribute. [Contribute].

Backers

Thank you to all our backers! ? [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]