/p3ui

C++ & Python User Interface Library

Primary LanguageC++MIT LicenseMIT

Project

Build PyPI version

This is a combination of ImGui, ImPlot and Skia. It can be used as a C++ library or out of Python through a Skia python binding with Pybind11

Goals and Features:

  • Hardware-accelerated rendering through DirectX 12
  • Asynchronous, lock-free API
  • Plot with ImPlot or a Matplotlib-backend
  • Builtin Image viewer, virtual keyboard ..
ImGui Elements Matplotlib Integration
widgets matplotlib
ImPlot Flexible
widgets matplotlib
SVG Image Viewer
svg Image Viewer

Installation

pip install p3ui

Hello World

from p3ui import *


async def main():
    window = Window(title='Hello World!')
    
    window.user_interface.content = Row(
        justify_content=Justification.SpaceAround,
        align_items=Alignment.Center,
        children=[Text('Hello'), Text('World')])
    
    await window.closed

    
run(main())