Skip to main content

New and aesthetically pleasing GUI library (新型美观GUI库)

Project description

Suzaku 朱雀

Advanced UI module based on skia-python, pyopengl and glfw.

基于skia-pythonpyopenglglfw高级界面库。

Still under developing... / 正在抓紧制作中...

versions under dev are provided for evulation purposes.

您可以下载正在开发的版本来进行评估。


Basic Example / 简单示例

python3 -m suzaku

0.1.1

0.1.1.png 0.1.1-Dark.png

Layout / 布局

Each component can use layout methods to arrange itself using, for instance, widget.box(), which is similar to how things work in tkinter. Comparing to other solutions used in Qt or other UI frameworks, we believe this approach is more simple and user-friendly.

每个组件都可以使用布局方法来布局自己,例如widget.box(),类似于tkinter,我觉得这样更简洁易用点。

Box

It can be considered a simplified version of tkinter.pack—without anchor, expand, or fill attributes, only side, expand, padx, and pady attributes.
(In the future, ipadx and ipady attributes will be added.) Each container can only choose one layout direction. For example, you cannot use both widget.box(side="left") and widget.box(side="right") simultaneously.

可以被称为tkinter.pack的简易版,就是没有anchorexpandfill属性,只有sideexpandpadxpady属性。 (未来会做ipadxipady属性) 每个容器只能选择一种布局方向,例如,不能同时使用widget.box(side="left")widget.box(side="right")

Vertical layout / 垂直布局

The default layout is vertical.

默认为垂直方向布局。

widget.box()

Horizontal layout / 水平布局

widget.box(side="left")
widget2.box(side="right")

How it Works / 原理

Basic Pricinples / 基础原理

Several (only 2 now actually) modules are used to provide several (same, only 2 now) window base, to enable us showing and modifying the window. After that, skia-python is used as a drawing backend.

使用glfw作为窗口管理库,使用pyopengl作为后端,使用skia-python作为绘画后端。

Naming / 取名

Suzaku is one of the four mythical beasts in ancient China. Sounds cool isn't it?

suzaku是朱雀的意思,朱雀是中国古代的四大神兽之一。取这名呢感觉很霸气,先占个名先。

Plans / 计划

It may be compatible with multiple frameworks in the future, such as SDL2.

可能后续会兼容多个框架,如SDL2

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

suzaku-0.1.4.tar.gz (389.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

suzaku-0.1.4-py3-none-any.whl (412.5 kB view details)

Uploaded Python 3

File details

Details for the file suzaku-0.1.4.tar.gz.

File metadata

  • Download URL: suzaku-0.1.4.tar.gz
  • Upload date:
  • Size: 389.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.0 CPython/3.13.5 Windows/11

File hashes

Hashes for suzaku-0.1.4.tar.gz
Algorithm Hash digest
SHA256 fc04588a20d0783026b10e7385a1b79b4dec3b4cf4a8998d8cdb959bc1f235c9
MD5 9867787a675bedf68bf5c7e0b71683df
BLAKE2b-256 e324e608d10586ee30c5aa23b599707197918ce5ed3b0cb13eda4dd9e38f9f30

See more details on using hashes here.

File details

Details for the file suzaku-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: suzaku-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 412.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.0 CPython/3.13.5 Windows/11

File hashes

Hashes for suzaku-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9b5608100e128e8f33915cd1b84d47cbb2b5e9494bb67bce22367bde04977ae8
MD5 a4f6b2f9e84b0ed6373e8cff3ff28b04
BLAKE2b-256 2386709c7fd662728eddf976b1ee6afe8b551c936383c74f79131fc5155344a0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page