Metadata-Version: 2.1
Name: imgui
Version: 1.3.0
Summary: Cython-based Python bindings for dear imgui
Home-page: https://github.com/swistakm/pyimgui
Author: Michał Jaworski
Author-email: swistakm@gmail.com
License: BSD
Platform: UNKNOWN
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Cython
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Cython
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Microsoft :: Windows
Classifier: Topic :: Games/Entertainment
Description-Content-Type: text/markdown
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: full
Requires-Dist: glfw ; extra == 'full'
Requires-Dist: PySDL2 ; extra == 'full'
Requires-Dist: pygame ; extra == 'full'
Requires-Dist: cocos2d ; extra == 'full'
Requires-Dist: Cython (<0.30,>=0.24) ; extra == 'full'
Requires-Dist: PyOpenGL ; extra == 'full'
Requires-Dist: pyglet ; (sys_platform != "darwin") and extra == 'full'
Requires-Dist: pyglet (>=1.5.6) ; (sys_platform == "darwin") and extra == 'full'
Provides-Extra: glfw
Requires-Dist: PyOpenGL ; extra == 'glfw'
Requires-Dist: glfw ; extra == 'glfw'
Provides-Extra: opengl
Requires-Dist: PyOpenGL ; extra == 'opengl'
Provides-Extra: pygame
Requires-Dist: PyOpenGL ; extra == 'pygame'
Requires-Dist: pygame ; extra == 'pygame'
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: sdl2
Requires-Dist: PyOpenGL ; extra == 'sdl2'
Requires-Dist: PySDL2 ; extra == 'sdl2'

[![completion](https://img.shields.io/badge/completion-81%25%20%28373%20of%20458%29-blue.svg)](https://github.com/swistakm/pyimgui)
[![Coverage Status](https://coveralls.io/repos/github/swistakm/pyimgui/badge.svg?branch=master)](https://coveralls.io/github/swistakm/pyimgui?branch=master)
[![Documentation Status](https://readthedocs.org/projects/pyimgui/badge/?version=latest)](https://pyimgui.readthedocs.io/en/latest/?badge=latest)

Builds:

* [![Build status](https://ci.appveyor.com/api/projects/status/s7pud6on7dww89iv?svg=true)](https://ci.appveyor.com/project/swistakm/pyimgui) (Windows)
* [![Build Status](https://travis-ci.com/swistakm/pyimgui.svg?branch=master)](https://travis-ci.com/github/swistakm/pyimgui/branches) (OS X & Linux)


# pyimgui

Python bindings for the amazing
[dear imgui](https://github.com/ocornut/imgui) C++ library - a Bloat-free
Immediate Mode Graphical User Interface.

Documentation: [pyimgui.readthedocs.io](https://pyimgui.readthedocs.io/en/latest/index.html)

# Installation

**pyimgui** is available on PyPI so you can easily install it with `pip`:

    pip install imgui[full]

Above command will install `imgui` package with additional dependencies for all
built-in rendering backend integrations (pygame, cocos2d, etc.). If you don't
want to install all additional dependencies you can always use bare
`pip install imgui` command or select a specific set of extra requirements:

* for pygame backend use `pip install imgui[pygame]`
* for GLFW3 backend use `pip install imgui[glfw]`
* for SDL2 backend use `pip install imgui[sdl2]`
* for Cocos2d backend use `pip install imgui[cocos2d]`
* for pyglet backend use `pip install imgui[pyglet]`

Package is distributed in form of *built wheels* so it does not require
compilation on most operating systems. For more details about compatibility
with diffferent OSes and Python versions see the *Project ditribution*
section of this documentation page.


# Project status

The `imgui` package provides support for the majority of core ImGui widgets and
functionalities. Some low-level API elements and complex widgets (like plots)
may be missing. We are working hard to provide 100% feature mapping of the core
ImGui library. The *completion badge* shows up-to-date status of that goal.


# Project distribution

This project has a working build pipeline on Appveyor and Travis. It builds
succesfully for all major operating systems with different architectures:

* Windows (32bit & 64bit)
* Linux (32bit & 64bit)
* OS X (universal build)

Right now we are ready to shipping the built wheels for these three systems
(even for Linux using `manylinux1` wheels). The build pipeline covers multiple
Python versions:

* py27
* py33 (macOS wheel not available on PyPI)
* py34
* py35
* py36
* py37
* py38
* py39


**pyimgui** provides documentation with multiple visual examples.
Thanks to custom Sphinx extensions we are able to render GUI examples off
screen directly from docstring snippets. These examples work also as automated
functional tests. Documentation is hosted on
[pyimgui.readthedocs.io](https://pyimgui.readthedocs.io/en/latest/index.html).

If none of these wheels work in your environment you can install the `imgui`
package by compiling it directly from sdist distribution using one of following
commands:

    # will install Cython as extra dependency and compile from Cython sources
    pip install imgui[Cython] --no-binary imgui

    # will compile from pre-generated C++ sources
    pip install imgui --no-binary imgui


# Development tips
We have tried hard to make the process of bootstrapping this project as simple
as possible.

In order to build and install project locally ,ake sure you have created and
activated virtual environment using `virtualenv` or `python -m venv` (for newer
Python releases). Then you can just run:

    make build

This command will bootstrap whole environment (pull git submodules, install 
dev requirements etc.) and build the project. `make` will automatically install
`imgui` in the *development/editable* mode. Then you can run some examples
found in the `doc/examples` directory in order to verify if project is working.

For building documentation and running tests you will need some additional
requirements from `doc/requirements-test.txt`.

You can run tests with:

    py.test


If you have any problems with building or installing the project just ask us
for help by creating GitHub issue.


