# mitsuba-renderer/nanogui

Minimalistic C++/Python GUI library for OpenGL, GLES2/3, Metal, and WebAssembly/WebGL

Repository: https://github.com/mitsuba-renderer/nanogui
Canonical: https://ross.abutalabs.com/products/mitsuba-renderer-nanogui
Language: C++
License: NOASSERTION
License Family: other
Last push: 2026-08-25T23:26:18+00:00

## Health v2 (maintenance only)
Score: 77/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 35, longevity 100
- inputs: {"age_days": 3330, "days_push": 8, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1814, forks 217 (observed 2026-08-28T04:05:39.864925+00:00)

## What it is
NanoGUI is a minimalistic cross-platform C++/Python widget library for building GUIs rendered with OpenGL 3+, GLES 2/3, Metal, and WebGL via WebAssembly. It provides automatic layout, stateful lambda callbacks, various widgets, and full Python bindings via nanobind with PyPI wheels.

## Use cases
- build a small native GUI for a C++ graphics application
- create a Python desktop UI with OpenGL rendering
- compile a GUI app to WebAssembly for the browser
- add a settings panel to a renderer or simulation tool
- build UIs that run on Raspberry Pi via GLES2
- prototype cross-platform desktop tools with Python bindings

## When to choose
- you need a lightweight, minimal GUI tied to OpenGL/Metal rendering
- you want one codebase targeting desktop, ARM, and the browser via Emscripten
- you want Python bindings for a C++ widget library

## When to avoid
- you need a full-featured application framework with extensive widgets
- you want GPU-agnostic UI without OpenGL/Metal dependencies
- you need a declarative or web-based UI toolkit

## Facets
- artifact type: library
- maturity: active
- function: ui-components, graphics, gui
- domain: cross-platform, web-development, graphics, developer-tools
- platform: cpp, python, windows, wasm, browser
- tags: opengl, metal, webgl, gles, nanovg, widget-library, python-bindings, retina, hdr, macos, linux, ios

## Member repositories
- mitsuba-renderer/nanogui (main) score 77

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:39.864925+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:21:05.843872+00:00, confidence not recorded.
  - readme: https://github.com/mitsuba-renderer/nanogui (fetched 2026-08-28T04:05:39.864925+00:00, sha 2a6fd9849465)
- Data as of 2026-08-30T08:39:29.467469+00:00.
