dpgui
A web-based GUI for user inputs.
What it is and what it does
DP-GUI is a web-based interface for collecting structured user inputs, built on werkzeug and waitress. It exposes an HTTP server that serves a Vue-based frontend, allowing users to fill in form fields that correspond to Python function arguments. The package is designed to be extended: other Python packages can register their own argument schemas via entry points, so that DP-GUI automatically discovers and displays input forms for those packages' functions. The core runtime dependencies are dargs (for argument definition), werkzeug and waitress (for the web server), and importlib-metadata (for entry point discovery).
The typical workflow is to install DP-GUI, run the `dpgui` command to start the server, then open a browser to interact with the forms. Developers can extend it by adding entry points in their own packages that return dargs.Argument objects, making their package's configuration available through the GUI without modifying DP-GUI itself.
Use it for:
- Provide a web form interface for configuring complex scientific or engineering simulations without requiring users to write code.
- Build a centralized input portal where multiple installed packages can register their own configuration forms dynamically.
- Create a lightweight web UI for parameter collection in data processing or machine learning workflows.
- Allow non-technical users to set up job configurations for distributed computing tasks via a browser.
- Prototype rapid input interfaces for research tools by leveraging existing dargs argument definitions.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a web-based GUI for collecting structured user inputs, with support for plugin-based argument definitions from other installed Python packages via entry points.
Yes, if you need a lightweight, extensible web form interface for Python package configuration. The low install friction, active repository, and plugin architecture make it suitable for scientific or engineering workflows. LGPLv3 copyleft is a consideration for proprietary applications. No known vulnerabilities.
Install
dpgui on PyPI
pip
pip install dpguiuv
uv add dpguipoetry
poetry add dpguiInstalling dpgui
Before you install
Low install friction with a pure-Python wheel and only four runtime dependencies. Repository is active with a recent commit on 2026-08-10.
License in practice
Licensed under GNU Lesser General Public License v3 (LGPLv3, copyleft). You may use and modify the package freely, but any derivative work must also be licensed under LGPLv3 or a compatible license; proprietary applications linking to it must provide source code access.
Quickstart
pip install dpgui
dpgui
Requires Python 3.7 or later; the web interface runs locally and expects a browser to connect to the served endpoint.
Verify before relying
- Whether the package can be used programmatically beyond the CLI entry point or if it is CLI-only.
- Performance characteristics and scalability limits for large numbers of input fields or concurrent users.
- Whether dargs, importlib-metadata, waitress, and werkzeug versions have known incompatibilities or constraints.
- Time elapsed since last release (2024-11-17) and implications for maintenance activity.
Package facts
| License | GNU LESSER GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/> Everyone is permitted to copy and distribute verbatim copies of this… (full text in the JSON record) (copyleft) |
| Python support | supports the current Python release (>=3.7) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — dargs, importlib-metadata, waitress, werkzeug |
| Maintenance | actively maintained — 635 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 108,139/month — #12,575 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: dpgui-1.0.1-py3-none-any.whl
Keywords: gui
Tags
More Dynamic Content packages
MarkupSafe provides a text object that escapes…
permissive · top 100 on PyPI
Jinja2Jinja2 is a templating engine that renders…
permissive · top 100 on PyPI
soupsieveSoupsieve is a CSS selector library designed to…
permissive · top 100 on PyPI
WerkzeugWerkzeug is a WSGI utility library providing…
permissive · top 1,000 on PyPI
FlaskFlask is a lightweight WSGI web application…
permissive · top 1,000 on PyPI
MakoMako compiles Python-embedded templates into…
permissive · top 1,000 on PyPI
dargsValidates, normalizes, and documents structured…
copyleft · top 15,000 on PyPI
entrypointsDiscovers and loads entry points from installed…
permissive · top 1,000 on PyPI
niceguiNiceGUI is a Python framework for building…
permissive · top 5,000 on PyPI
entrypointProvides a decorator to mark functions as entry…
permissive · top 15,000 on PyPI
cliffcliff is a framework for building command-line…
permissive · top 5,000 on PyPI
pywebviewpywebview wraps native webview components to…
permissive · top 5,000 on PyPI
knx-frontendProvides a web-based user interface panel for…
permissive · top 15,000 on PyPI
pyodide-cliA command-line interface for the Pyodide…
copyleft · top 15,000 on PyPI
jupyter-ai-persona-managerProvides the foundational infrastructure for…
permissive · top 15,000 on PyPI
stevedoreStevedore manages dynamic plugin loading for…
permissive · top 1,000 on PyPI