quiht-tools
CLI utilities for quiht, the Qt .ui → HTML
renderer. quiht-tools generates .quiht.json manifests from Qt source trees
and packs everything into a single, portable .quiht.zip.
Install
pip install quiht-tools
# or, for a one-off run without installing:
uvx quiht-tools --help
Requires Python 3.10+. The only runtime dependency is fire.
The .quiht.zip format
A .quiht.zip is a standard ZIP archive whose root contains:
.quiht.json # the manifest
ui/ # all .ui files
resources/ # all resource files (PNG icons, etc.)
translations.json # optional
The manifest's ui and resources values are paths relative to the archive
root, so a .quiht.zip is a self-contained, all-in-one package that a quiht
viewer can load directly.
Commands
The console script is quiht.
gen (alias jsongen) — build a bundle + manifest
Scan a Qt source tree, copy referenced .ui files and their resources into a
bundle directory, and write .quiht.json.
quiht gen <src_dir> <dest_dir> \
--url_prefix "https://example.com/ui/" \
--ui_files "ui/dialog.ui,forms/welcome.ui"
--ui_filesaccepts a comma-separated list (paths relative tosrc_dir, or bare filenames). Omit it to auto-discover every.uiundersrc_dir.--url_prefixis written into the manifest'sprefixfield (optional).--resource_remaplets you supply dataset-specific filename fixups; nothing is hardcoded.
pack — create a .quiht.zip
From an existing bundle directory (one that already contains .quiht.json):
quiht pack ./example --output mybundle.quiht.zip
Or directly from a Qt source tree (runs gen into a temp dir first):
quiht pack <src_dir> --from_src --name mybundle --ui_files "a.ui,b.ui"
Defaults to <bundle-name>.quiht.zip in the current directory.
unpack — extract a .quiht.zip
quiht unpack mybundle.quiht.zip ./out
version
quiht version
Library use
from quiht_tools import generate, pack, unpack
generate("src/qt", "build/bundle")
pack("build/bundle", output="bundle.quiht.zip")
unpack("bundle.quiht.zip", "build/extracted")
Development
cd quiht-tools
uv run --with fire --with pytest python -m pytest -x
Versioning is driven by git tags via hatch-vcs; src/quiht_tools/__version__.py
is generated at build time and is git-ignored.
License
Apache-2.0.
Release files for quiht-tools 1.0.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| quiht_tools-1.0.8.tar.gz | 8.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| quiht_tools-1.0.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.5 kB
Release files / quiht_tools-1.0.8.tar.gz
| Download URL | quiht_tools-1.0.8.tar.gz |
|---|---|
| Size | 8.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e5fb1514a7d0589059bb195144113f43887960a8d5bd5f6071f97cdbb9a3501d
|
|
BLAKE2b-256 checksum How to use checksums |
719233cd225f84fae2f2c38a3501420df58b6ea4577fa3d571acaf2e5d4ae4b8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / quiht_tools-1.0.8-py3-none-any.whl
| Download URL | quiht_tools-1.0.8-py3-none-any.whl |
|---|---|
| Size | 8.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a5e5a2ffce1dd32150864bb8354f2c2e6e966d268133e87971e6a7858c5dc891
|
|
BLAKE2b-256 checksum How to use checksums |
18d94f0a8260b7d910b8e5517de4ae04dab3d2435584da16e38ec12a280c3755
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|