Metadata-Version: 2.4
Name: meltygui-imgui
Version: 2.0.0.post1
Summary: Cython-based Python bindings for dear meltygui_imgui
Home-page: https://github.com/Attentio-AI/meltygui-imgui
Author: Michał Jaworski
Author-email: swistakm@gmail.com
License: BSD
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Cython
Classifier: Operating System :: POSIX :: Linux
Classifier: Topic :: Games/Entertainment
Requires-Python: >=3.12,<3.13
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: LICENSES/imgui-MIT.txt
License-File: LICENSES/imstb_rectpack.h.license.txt
License-File: LICENSES/imstb_textedit.h.license.txt
License-File: LICENSES/imstb_truetype.h.license.txt
Provides-Extra: cython
Requires-Dist: Cython<0.30,>=0.24; extra == "cython"
Provides-Extra: cocos2d
Requires-Dist: PyOpenGL; extra == "cocos2d"
Requires-Dist: cocos2d; extra == "cocos2d"
Requires-Dist: pyglet>=1.5.6; sys_platform == "darwin" and extra == "cocos2d"
Provides-Extra: sdl2
Requires-Dist: PyOpenGL; extra == "sdl2"
Requires-Dist: PySDL2; extra == "sdl2"
Provides-Extra: glfw
Requires-Dist: PyOpenGL; extra == "glfw"
Requires-Dist: glfw; extra == "glfw"
Provides-Extra: pygame
Requires-Dist: PyOpenGL; extra == "pygame"
Requires-Dist: pygame; extra == "pygame"
Provides-Extra: opengl
Requires-Dist: PyOpenGL; extra == "opengl"
Provides-Extra: pyglet
Requires-Dist: PyOpenGL; extra == "pyglet"
Requires-Dist: pyglet; sys_platform != "darwin" and extra == "pyglet"
Requires-Dist: pyglet>=1.5.6; sys_platform == "darwin" and extra == "pyglet"
Provides-Extra: full
Requires-Dist: PySDL2; extra == "full"
Requires-Dist: Cython<0.30,>=0.24; extra == "full"
Requires-Dist: glfw; extra == "full"
Requires-Dist: cocos2d; extra == "full"
Requires-Dist: pygame; extra == "full"
Requires-Dist: PyOpenGL; extra == "full"
Requires-Dist: pyglet>=1.5.6; sys_platform == "darwin" and extra == "full"
Requires-Dist: pyglet; sys_platform != "darwin" and extra == "full"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: license-file
Dynamic: provides-extra
Dynamic: requires-python
Dynamic: summary

# meltygui-imgui

Namespaced imgui bindings maintained for MeltyGUI, based on the upstream source
recorded in [UPSTREAM.json](UPSTREAM.json). Original authorship and licenses are
preserved. This repository contains the binding source and its release tooling.

```sh
uv pip install meltygui-imgui
```

```python
import meltygui_imgui
```

The first release is **2.0.0.post1**, supporting Linux x86-64, CPython 3.12 and
glibc 2.28 or newer. It installs `meltygui_imgui` without overwriting the upstream
`imgui` package. Other platforms and Python versions are not supported yet.

The bundled Dear ImGui and font-helper license notices are included in the artifacts.

## Build

Docker is required. The manylinux image and Python build dependencies are pinned.
The wheel is built from the generated source archive, which is also published
for local compilation when a matching wheel is unavailable.

```sh
python3 tools/build.py
python3 tools/verify.py dist
uvx --from twine==7.0.0 twine check --strict dist/*.whl dist/*.tar.gz
```

Use `--sudo-docker` if Docker requires sudo. Source builds require a C++ compiler.

## Publish

Pushes to `main` and pull requests build and test without uploading. A `v*` tag
or a manual run with `publish=true` publishes the verified wheel and source
archive through PyPI trusted publishing. Published versions cannot be replaced.

Configure a pending GitHub publisher at https://pypi.org/manage/account/publishing/:

| Field | Value |
| --- | --- |
| PyPI project | `meltygui-imgui` |
| Owner | `Attentio-AI` |
| Repository | `meltygui-imgui` |
| Workflow | `release.yml` |
| Environment | `pypi` |

Then, after the main-branch build passes, create and push `v2.0.0.post1`.
No API token belongs in this repository.

## Licenses and changes

See [LICENSE](LICENSE), [LICENSES](LICENSES), and [MELTYGUI.md](MELTYGUI.md).
The primary changes are the Python namespace, pinned build dependencies,
Python 3.12 support, and rebuilt Cython extensions.
