xml2gui


Namexml2gui JSON
Version 1.0.0 PyPI version JSON
download
home_pagehttps://gitee.com/ghhuang1057/xml2-gui
SummaryA powerful framework for creating GUI applications using XML files
upload_time2025-09-14 05:44:41
maintainerNone
docs_urlNone
authorhuang1057
requires_python>=3.6
licenseNone
keywords xml gui pyqt pyqt5 qt python ui designer
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Xml2GUI



<div align="center">

  <img src="image.png" width="200" alt="Xml2GUI">

  <h1>Xml2GUI</h1>

  <p></p>

  <a href="https://www.gnu.org/licenses/gpl-3.0">

    <img src="https://img.shields.io/badge/License-GPLv3-blue.svg" alt="GPL v3">

  </a>

</div>







### 完整使用指南:[USER_GUIDE.md](USER_GUIDE.md)



## 什么是Xml2GUI?



Xml2GUI是一个十分方便的框架,专为没有任何编程经验的用户设计。它允许您通过简单的XML文件创建功能强大、界面美观的桌面应用程序。您无需编写复杂的Python代码,只需使用直观的XML标记语言,就能创建出漂亮的图形用户界面(GUI)应用程序。

### 各位刷机大佬建议配合bff食用(doge

---

### 核心优势



- **零编程经验要求**:无需任何编程知识,只需了解基本的XML语法

- **直观的XML语法**:使用简单易懂的XML标签定义界面元素

- **自动代码生成**:将XML文件自动转换为可执行的Python代码

- **一键编译为EXE**:轻松将应用程序编译为独立的可执行文件

- **丰富的控件支持**:支持各种常用控件和布局

- **现代化界面**:支持PyQt-Fluent-Widgets,创建美观的现代化界面

- **事件处理简化**:简单易用的事件绑定机制



## 快速开始(3步完成)



### 第1步:编写XML文件



创建一个XML文件,定义您的应用程序界面和功能:



```xml

<?xml version="1.0" encoding="UTF-8"?>

<application>

    <!-- 窗口属性 -->

    <window title="我的第一个应用" width="600" height="400"/>

    

    <!-- 布局定义 -->

    <layouts>

        <layout id="main_layout" type="VBoxLayout">

            <widget id="welcome_label" type="Label" text="欢迎使用Xml2GUI框架!"/>

            <widget id="run_button" type="Button" text="运行程序"/>

            <widget id="result_label" type="Label" text=""/>

        </layout>

    </layouts>

    

    <!-- 事件绑定 -->

    <events>

        <event widget="run_button" type="click" handler="on_run_button_clicked"/>

    </events>

</application>

```



### 第2步:生成应用程序



在命令行中执行以下命令:



```bash

# 生成Python程序

python build.py my_app.xml



# 生成可执行文件(EXE)

python build.py my_app.xml -exe

```



### 第3步:运行您的应用



```bash

# 运行Python程序

python dist/my_app.py



# 或直接运行生成的EXE文件

output/my_app.exe

```



## 安装指南



### 系统要求



- Windows 操作系统(推荐)

- Python 3.6 或更高版本



### 安装步骤



1. **下载项目**



   ```bash

   git clone https://gitee.com/ghhuang1057/xml2-gui.git

   cd xml2-gui

   ```



2. **安装依赖**



   ```bash

   pip install -r requirements.txt

   ```

   

   这会自动安装以下依赖:

   - `PyQt5` - Python Qt5 GUI框架

   - `PyQt-Fluent-Widgets` - Fluent风格控件库

   - `nuitka` - Python代码编译器(用于生成EXE)



3. **完成安装**



   现在您已经准备好使用Xml2GUI了!所有必要的依赖都已安装,包括编译EXE所需的工具。



## 功能特性



### 1. 按钮操作

- **打开程序**:点击按钮启动任何可执行文件

- **打开文档**:点击按钮打开文档、图片等文件

- **运行批处理**:点击按钮执行.bat或.cmd脚本

- **打开网页**:点击按钮打开指定网址



### 2. 数据交互

- **文本输入**:支持单行和多行文本输入

- **选择操作**:支持下拉框、复选框、单选按钮等

- **文件选择**:支持文件和文件夹选择对话框



### 3. 界面设计

- **多种布局**:垂直、水平、网格、表单等布局方式

- **样式定制**:通过CSS样式定制控件外观

- **响应式设计**:自适应窗口大小变化



## 项目结构



```

Xml2GUI/

├── build.py              # 构建脚本

├── xml2gui/              # 框架核心代码

│   ├── __init__.py

│   ├── parser.py         # XML解析器

│   ├── generator.py      # Python代码生成器

│   └── compiler.py       # 编译器(用于生成exe)

├── examples/             # 示例文件

│   ├── hello_world.xml

│   └── ...

├── dist/                 # 生成的Python代码输出目录

└── output/               # 生成的exe文件输出目录

```



## 详细使用指南



有关更详细的使用说明,请参考[用户使用指南](USER_GUIDE.md)。



## 许可证

本项目主要基于GNU通用公共许可证版本3(GPL v3)授权。



此外,本项目采用可持续发展开源许可证(SCL)作为例外条款。SCL允许经极客地平线工作室(Geek Horizon Studio)认证的开发者在满足特定条件的情况下,免除GPL v3的某些义务。



**对于所有用户:**

*   默认情况下,您必须遵守GPL v3许可证的条款。

*   请参阅 `LICENSE-GPLv3` 文件了解详细条款。



**对于认证开发者:**

*   如果您已从极客地平线工作室获得有效的SCL校验码,您可以依据 `LICENSE-SCL` 文件中规定的例外条款操作。



---

我的校验码:

开发者信息

名称: huang1057

校验码: GHS-57529AD4487EB14D5528BDF0522E



---



验证SCL校验码:https://scl-verify.ghosf.dpdns.org/


            

Raw data

            {
    "_id": null,
    "home_page": "https://gitee.com/ghhuang1057/xml2-gui",
    "name": "xml2gui",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "xml gui pyqt pyqt5 qt python ui designer",
    "author": "huang1057",
    "author_email": "your.email@example.com",
    "download_url": "https://files.pythonhosted.org/packages/64/96/7782d79ebcd731ad98c556fdc7cd9d08032ee2161540554221fccaeec91d/xml2gui-1.0.0.tar.gz",
    "platform": null,
    "description": "# Xml2GUI\r\n\r\n\r\n\r\n<div align=\"center\">\r\n\r\n  <img src=\"image.png\" width=\"200\" alt=\"Xml2GUI\">\r\n\r\n  <h1>Xml2GUI</h1>\r\n\r\n  <p></p>\r\n\r\n  <a href=\"https://www.gnu.org/licenses/gpl-3.0\">\r\n\r\n    <img src=\"https://img.shields.io/badge/License-GPLv3-blue.svg\" alt=\"GPL v3\">\r\n\r\n  </a>\r\n\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n### \u5b8c\u6574\u4f7f\u7528\u6307\u5357\uff1a[USER_GUIDE.md](USER_GUIDE.md)\r\n\r\n\r\n\r\n## \u4ec0\u4e48\u662fXml2GUI\uff1f\r\n\r\n\r\n\r\nXml2GUI\u662f\u4e00\u4e2a\u5341\u5206\u65b9\u4fbf\u7684\u6846\u67b6\uff0c\u4e13\u4e3a\u6ca1\u6709\u4efb\u4f55\u7f16\u7a0b\u7ecf\u9a8c\u7684\u7528\u6237\u8bbe\u8ba1\u3002\u5b83\u5141\u8bb8\u60a8\u901a\u8fc7\u7b80\u5355\u7684XML\u6587\u4ef6\u521b\u5efa\u529f\u80fd\u5f3a\u5927\u3001\u754c\u9762\u7f8e\u89c2\u7684\u684c\u9762\u5e94\u7528\u7a0b\u5e8f\u3002\u60a8\u65e0\u9700\u7f16\u5199\u590d\u6742\u7684Python\u4ee3\u7801\uff0c\u53ea\u9700\u4f7f\u7528\u76f4\u89c2\u7684XML\u6807\u8bb0\u8bed\u8a00\uff0c\u5c31\u80fd\u521b\u5efa\u51fa\u6f02\u4eae\u7684\u56fe\u5f62\u7528\u6237\u754c\u9762\uff08GUI\uff09\u5e94\u7528\u7a0b\u5e8f\u3002\r\n\r\n### \u5404\u4f4d\u5237\u673a\u5927\u4f6c\u5efa\u8bae\u914d\u5408bff\u98df\u7528\uff08doge\r\n\r\n---\r\n\r\n### \u6838\u5fc3\u4f18\u52bf\r\n\r\n\r\n\r\n- **\u96f6\u7f16\u7a0b\u7ecf\u9a8c\u8981\u6c42**\uff1a\u65e0\u9700\u4efb\u4f55\u7f16\u7a0b\u77e5\u8bc6\uff0c\u53ea\u9700\u4e86\u89e3\u57fa\u672c\u7684XML\u8bed\u6cd5\r\n\r\n- **\u76f4\u89c2\u7684XML\u8bed\u6cd5**\uff1a\u4f7f\u7528\u7b80\u5355\u6613\u61c2\u7684XML\u6807\u7b7e\u5b9a\u4e49\u754c\u9762\u5143\u7d20\r\n\r\n- **\u81ea\u52a8\u4ee3\u7801\u751f\u6210**\uff1a\u5c06XML\u6587\u4ef6\u81ea\u52a8\u8f6c\u6362\u4e3a\u53ef\u6267\u884c\u7684Python\u4ee3\u7801\r\n\r\n- **\u4e00\u952e\u7f16\u8bd1\u4e3aEXE**\uff1a\u8f7b\u677e\u5c06\u5e94\u7528\u7a0b\u5e8f\u7f16\u8bd1\u4e3a\u72ec\u7acb\u7684\u53ef\u6267\u884c\u6587\u4ef6\r\n\r\n- **\u4e30\u5bcc\u7684\u63a7\u4ef6\u652f\u6301**\uff1a\u652f\u6301\u5404\u79cd\u5e38\u7528\u63a7\u4ef6\u548c\u5e03\u5c40\r\n\r\n- **\u73b0\u4ee3\u5316\u754c\u9762**\uff1a\u652f\u6301PyQt-Fluent-Widgets\uff0c\u521b\u5efa\u7f8e\u89c2\u7684\u73b0\u4ee3\u5316\u754c\u9762\r\n\r\n- **\u4e8b\u4ef6\u5904\u7406\u7b80\u5316**\uff1a\u7b80\u5355\u6613\u7528\u7684\u4e8b\u4ef6\u7ed1\u5b9a\u673a\u5236\r\n\r\n\r\n\r\n## \u5feb\u901f\u5f00\u59cb\uff083\u6b65\u5b8c\u6210\uff09\r\n\r\n\r\n\r\n### \u7b2c1\u6b65\uff1a\u7f16\u5199XML\u6587\u4ef6\r\n\r\n\r\n\r\n\u521b\u5efa\u4e00\u4e2aXML\u6587\u4ef6\uff0c\u5b9a\u4e49\u60a8\u7684\u5e94\u7528\u7a0b\u5e8f\u754c\u9762\u548c\u529f\u80fd\uff1a\r\n\r\n\r\n\r\n```xml\r\n\r\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n\r\n<application>\r\n\r\n    <!-- \u7a97\u53e3\u5c5e\u6027 -->\r\n\r\n    <window title=\"\u6211\u7684\u7b2c\u4e00\u4e2a\u5e94\u7528\" width=\"600\" height=\"400\"/>\r\n\r\n    \r\n\r\n    <!-- \u5e03\u5c40\u5b9a\u4e49 -->\r\n\r\n    <layouts>\r\n\r\n        <layout id=\"main_layout\" type=\"VBoxLayout\">\r\n\r\n            <widget id=\"welcome_label\" type=\"Label\" text=\"\u6b22\u8fce\u4f7f\u7528Xml2GUI\u6846\u67b6!\"/>\r\n\r\n            <widget id=\"run_button\" type=\"Button\" text=\"\u8fd0\u884c\u7a0b\u5e8f\"/>\r\n\r\n            <widget id=\"result_label\" type=\"Label\" text=\"\"/>\r\n\r\n        </layout>\r\n\r\n    </layouts>\r\n\r\n    \r\n\r\n    <!-- \u4e8b\u4ef6\u7ed1\u5b9a -->\r\n\r\n    <events>\r\n\r\n        <event widget=\"run_button\" type=\"click\" handler=\"on_run_button_clicked\"/>\r\n\r\n    </events>\r\n\r\n</application>\r\n\r\n```\r\n\r\n\r\n\r\n### \u7b2c2\u6b65\uff1a\u751f\u6210\u5e94\u7528\u7a0b\u5e8f\r\n\r\n\r\n\r\n\u5728\u547d\u4ee4\u884c\u4e2d\u6267\u884c\u4ee5\u4e0b\u547d\u4ee4\uff1a\r\n\r\n\r\n\r\n```bash\r\n\r\n# \u751f\u6210Python\u7a0b\u5e8f\r\n\r\npython build.py my_app.xml\r\n\r\n\r\n\r\n# \u751f\u6210\u53ef\u6267\u884c\u6587\u4ef6\uff08EXE\uff09\r\n\r\npython build.py my_app.xml -exe\r\n\r\n```\r\n\r\n\r\n\r\n### \u7b2c3\u6b65\uff1a\u8fd0\u884c\u60a8\u7684\u5e94\u7528\r\n\r\n\r\n\r\n```bash\r\n\r\n# \u8fd0\u884cPython\u7a0b\u5e8f\r\n\r\npython dist/my_app.py\r\n\r\n\r\n\r\n# \u6216\u76f4\u63a5\u8fd0\u884c\u751f\u6210\u7684EXE\u6587\u4ef6\r\n\r\noutput/my_app.exe\r\n\r\n```\r\n\r\n\r\n\r\n## \u5b89\u88c5\u6307\u5357\r\n\r\n\r\n\r\n### \u7cfb\u7edf\u8981\u6c42\r\n\r\n\r\n\r\n- Windows \u64cd\u4f5c\u7cfb\u7edf\uff08\u63a8\u8350\uff09\r\n\r\n- Python 3.6 \u6216\u66f4\u9ad8\u7248\u672c\r\n\r\n\r\n\r\n### \u5b89\u88c5\u6b65\u9aa4\r\n\r\n\r\n\r\n1. **\u4e0b\u8f7d\u9879\u76ee**\r\n\r\n\r\n\r\n   ```bash\r\n\r\n   git clone https://gitee.com/ghhuang1057/xml2-gui.git\r\n\r\n   cd xml2-gui\r\n\r\n   ```\r\n\r\n\r\n\r\n2. **\u5b89\u88c5\u4f9d\u8d56**\r\n\r\n\r\n\r\n   ```bash\r\n\r\n   pip install -r requirements.txt\r\n\r\n   ```\r\n\r\n   \r\n\r\n   \u8fd9\u4f1a\u81ea\u52a8\u5b89\u88c5\u4ee5\u4e0b\u4f9d\u8d56\uff1a\r\n\r\n   - `PyQt5` - Python Qt5 GUI\u6846\u67b6\r\n\r\n   - `PyQt-Fluent-Widgets` - Fluent\u98ce\u683c\u63a7\u4ef6\u5e93\r\n\r\n   - `nuitka` - Python\u4ee3\u7801\u7f16\u8bd1\u5668\uff08\u7528\u4e8e\u751f\u6210EXE\uff09\r\n\r\n\r\n\r\n3. **\u5b8c\u6210\u5b89\u88c5**\r\n\r\n\r\n\r\n   \u73b0\u5728\u60a8\u5df2\u7ecf\u51c6\u5907\u597d\u4f7f\u7528Xml2GUI\u4e86\uff01\u6240\u6709\u5fc5\u8981\u7684\u4f9d\u8d56\u90fd\u5df2\u5b89\u88c5\uff0c\u5305\u62ec\u7f16\u8bd1EXE\u6240\u9700\u7684\u5de5\u5177\u3002\r\n\r\n\r\n\r\n## \u529f\u80fd\u7279\u6027\r\n\r\n\r\n\r\n### 1. \u6309\u94ae\u64cd\u4f5c\r\n\r\n- **\u6253\u5f00\u7a0b\u5e8f**\uff1a\u70b9\u51fb\u6309\u94ae\u542f\u52a8\u4efb\u4f55\u53ef\u6267\u884c\u6587\u4ef6\r\n\r\n- **\u6253\u5f00\u6587\u6863**\uff1a\u70b9\u51fb\u6309\u94ae\u6253\u5f00\u6587\u6863\u3001\u56fe\u7247\u7b49\u6587\u4ef6\r\n\r\n- **\u8fd0\u884c\u6279\u5904\u7406**\uff1a\u70b9\u51fb\u6309\u94ae\u6267\u884c.bat\u6216.cmd\u811a\u672c\r\n\r\n- **\u6253\u5f00\u7f51\u9875**\uff1a\u70b9\u51fb\u6309\u94ae\u6253\u5f00\u6307\u5b9a\u7f51\u5740\r\n\r\n\r\n\r\n### 2. \u6570\u636e\u4ea4\u4e92\r\n\r\n- **\u6587\u672c\u8f93\u5165**\uff1a\u652f\u6301\u5355\u884c\u548c\u591a\u884c\u6587\u672c\u8f93\u5165\r\n\r\n- **\u9009\u62e9\u64cd\u4f5c**\uff1a\u652f\u6301\u4e0b\u62c9\u6846\u3001\u590d\u9009\u6846\u3001\u5355\u9009\u6309\u94ae\u7b49\r\n\r\n- **\u6587\u4ef6\u9009\u62e9**\uff1a\u652f\u6301\u6587\u4ef6\u548c\u6587\u4ef6\u5939\u9009\u62e9\u5bf9\u8bdd\u6846\r\n\r\n\r\n\r\n### 3. \u754c\u9762\u8bbe\u8ba1\r\n\r\n- **\u591a\u79cd\u5e03\u5c40**\uff1a\u5782\u76f4\u3001\u6c34\u5e73\u3001\u7f51\u683c\u3001\u8868\u5355\u7b49\u5e03\u5c40\u65b9\u5f0f\r\n\r\n- **\u6837\u5f0f\u5b9a\u5236**\uff1a\u901a\u8fc7CSS\u6837\u5f0f\u5b9a\u5236\u63a7\u4ef6\u5916\u89c2\r\n\r\n- **\u54cd\u5e94\u5f0f\u8bbe\u8ba1**\uff1a\u81ea\u9002\u5e94\u7a97\u53e3\u5927\u5c0f\u53d8\u5316\r\n\r\n\r\n\r\n## \u9879\u76ee\u7ed3\u6784\r\n\r\n\r\n\r\n```\r\n\r\nXml2GUI/\r\n\r\n\u251c\u2500\u2500 build.py              # \u6784\u5efa\u811a\u672c\r\n\r\n\u251c\u2500\u2500 xml2gui/              # \u6846\u67b6\u6838\u5fc3\u4ee3\u7801\r\n\r\n\u2502   \u251c\u2500\u2500 __init__.py\r\n\r\n\u2502   \u251c\u2500\u2500 parser.py         # XML\u89e3\u6790\u5668\r\n\r\n\u2502   \u251c\u2500\u2500 generator.py      # Python\u4ee3\u7801\u751f\u6210\u5668\r\n\r\n\u2502   \u2514\u2500\u2500 compiler.py       # \u7f16\u8bd1\u5668\uff08\u7528\u4e8e\u751f\u6210exe\uff09\r\n\r\n\u251c\u2500\u2500 examples/             # \u793a\u4f8b\u6587\u4ef6\r\n\r\n\u2502   \u251c\u2500\u2500 hello_world.xml\r\n\r\n\u2502   \u2514\u2500\u2500 ...\r\n\r\n\u251c\u2500\u2500 dist/                 # \u751f\u6210\u7684Python\u4ee3\u7801\u8f93\u51fa\u76ee\u5f55\r\n\r\n\u2514\u2500\u2500 output/               # \u751f\u6210\u7684exe\u6587\u4ef6\u8f93\u51fa\u76ee\u5f55\r\n\r\n```\r\n\r\n\r\n\r\n## \u8be6\u7ec6\u4f7f\u7528\u6307\u5357\r\n\r\n\r\n\r\n\u6709\u5173\u66f4\u8be6\u7ec6\u7684\u4f7f\u7528\u8bf4\u660e\uff0c\u8bf7\u53c2\u8003[\u7528\u6237\u4f7f\u7528\u6307\u5357](USER_GUIDE.md)\u3002\r\n\r\n\r\n\r\n## \u8bb8\u53ef\u8bc1\r\n\r\n\u672c\u9879\u76ee\u4e3b\u8981\u57fa\u4e8eGNU\u901a\u7528\u516c\u5171\u8bb8\u53ef\u8bc1\u7248\u672c3\uff08GPL v3\uff09\u6388\u6743\u3002\r\n\r\n\r\n\r\n\u6b64\u5916\uff0c\u672c\u9879\u76ee\u91c7\u7528\u53ef\u6301\u7eed\u53d1\u5c55\u5f00\u6e90\u8bb8\u53ef\u8bc1\uff08SCL\uff09\u4f5c\u4e3a\u4f8b\u5916\u6761\u6b3e\u3002SCL\u5141\u8bb8\u7ecf\u6781\u5ba2\u5730\u5e73\u7ebf\u5de5\u4f5c\u5ba4\uff08Geek Horizon Studio\uff09\u8ba4\u8bc1\u7684\u5f00\u53d1\u8005\u5728\u6ee1\u8db3\u7279\u5b9a\u6761\u4ef6\u7684\u60c5\u51b5\u4e0b\uff0c\u514d\u9664GPL v3\u7684\u67d0\u4e9b\u4e49\u52a1\u3002\r\n\r\n\r\n\r\n**\u5bf9\u4e8e\u6240\u6709\u7528\u6237\uff1a**\r\n\r\n*   \u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u60a8\u5fc5\u987b\u9075\u5b88GPL v3\u8bb8\u53ef\u8bc1\u7684\u6761\u6b3e\u3002\r\n\r\n*   \u8bf7\u53c2\u9605 `LICENSE-GPLv3` \u6587\u4ef6\u4e86\u89e3\u8be6\u7ec6\u6761\u6b3e\u3002\r\n\r\n\r\n\r\n**\u5bf9\u4e8e\u8ba4\u8bc1\u5f00\u53d1\u8005\uff1a**\r\n\r\n*   \u5982\u679c\u60a8\u5df2\u4ece\u6781\u5ba2\u5730\u5e73\u7ebf\u5de5\u4f5c\u5ba4\u83b7\u5f97\u6709\u6548\u7684SCL\u6821\u9a8c\u7801\uff0c\u60a8\u53ef\u4ee5\u4f9d\u636e `LICENSE-SCL` \u6587\u4ef6\u4e2d\u89c4\u5b9a\u7684\u4f8b\u5916\u6761\u6b3e\u64cd\u4f5c\u3002\r\n\r\n\r\n\r\n---\r\n\r\n\u6211\u7684\u6821\u9a8c\u7801\uff1a\r\n\r\n\u5f00\u53d1\u8005\u4fe1\u606f\r\n\r\n\u540d\u79f0: huang1057\r\n\r\n\u6821\u9a8c\u7801: GHS-57529AD4487EB14D5528BDF0522E\r\n\r\n\r\n\r\n---\r\n\r\n\r\n\r\n\u9a8c\u8bc1SCL\u6821\u9a8c\u7801\uff1ahttps://scl-verify.ghosf.dpdns.org/\r\n\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A powerful framework for creating GUI applications using XML files",
    "version": "1.0.0",
    "project_urls": {
        "Bug Reports": "https://gitee.com/ghhuang1057/xml2-gui/issues",
        "Documentation": "https://gitee.com/ghhuang1057/xml2-gui/blob/master/USER_GUIDE.md",
        "Homepage": "https://gitee.com/ghhuang1057/xml2-gui",
        "Source": "https://gitee.com/ghhuang1057/xml2-gui"
    },
    "split_keywords": [
        "xml",
        "gui",
        "pyqt",
        "pyqt5",
        "qt",
        "python",
        "ui",
        "designer"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "12a7f465f41cd8e02ffd7acd1d49a8712652157d0dcf602459aea79680dab757",
                "md5": "1ca52b98ca5a05fa886654924a335be3",
                "sha256": "9825dfd428ce0830c458aac0c80556f1ef769661e9269ce9b53ccdff85d28d21"
            },
            "downloads": -1,
            "filename": "xml2gui-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1ca52b98ca5a05fa886654924a335be3",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 14630,
            "upload_time": "2025-09-14T05:44:38",
            "upload_time_iso_8601": "2025-09-14T05:44:38.918598Z",
            "url": "https://files.pythonhosted.org/packages/12/a7/f465f41cd8e02ffd7acd1d49a8712652157d0dcf602459aea79680dab757/xml2gui-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "64967782d79ebcd731ad98c556fdc7cd9d08032ee2161540554221fccaeec91d",
                "md5": "96b49053de9aae804abf61cdc20e6afc",
                "sha256": "ea691e7925971fdd76bbae3f759e5a72f1db93d6ed14729e8a46029564152706"
            },
            "downloads": -1,
            "filename": "xml2gui-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "96b49053de9aae804abf61cdc20e6afc",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 294330,
            "upload_time": "2025-09-14T05:44:41",
            "upload_time_iso_8601": "2025-09-14T05:44:41.660506Z",
            "url": "https://files.pythonhosted.org/packages/64/96/7782d79ebcd731ad98c556fdc7cd9d08032ee2161540554221fccaeec91d/xml2gui-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-14 05:44:41",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "xml2gui"
}
        
Elapsed time: 0.45927s