This release is a pre-release and may not be stable for production use.
itqan-cli
Itqan Quranic Asset Manager
Install and pin Itqan Quranic assets (mushafs, tafsirs, translations, recitations, fonts) in your project, the way a package manager does for code.
You declare the assets you use and the versions you accept in itqan-assets.yaml. The CLI
resolves them against the Itqan registry, downloads them, and records the exact versions in
itqan-assets.lock, so teammates and CI get the same files.
Install
Requires Python 3.11+.
pipx install itqan-cli # or: uv tool install itqan-cli
Quick start
itqan init # writes itqan-assets.yaml with a few real assets as examples
itqan install # downloads them and writes itqan-assets.lock
Commit both itqan-assets.yaml and itqan-assets.lock. The downloaded files are reproducible
from the lockfile, so add the assets folder to .gitignore if you like.
The manifest
schema_version: 1
# Folder the assets are downloaded into, relative to this file (default: assets).
assets_dir: "public/quran"
assets:
# Source language of the asset.
tafsir-jalalayn:
version: "^2.0.0" # any 2.x from 2.0.0 on
# The same asset in English: its own entry, pointing at the asset.
tafsir-jalalayn-en:
asset: tafsir-jalalayn
language: en
version: "~1.3" # any 1.3.x
Each language of an asset has its own version history, so each gets its own entry, constraint,
lock entry and folder (public/quran/tafsir-jalalayn-en/). The full format is specified in
ASSET_MANIFEST.md.
Commands
| Command | What it does |
|---|---|
itqan init |
Create itqan-assets.yaml from the registry's catalog (commented examples when offline). --assets-dir, --force. |
itqan install |
Resolve, download and lock. Uses the lockfile's exact versions when it is up to date; --force re-resolves. |
itqan sync |
Same as install. |
itqan --version |
Print the CLI version. |
Configuration
| Option | Environment variable | Default |
|---|---|---|
--registry-url |
ITQAN_REGISTRY_URL |
https://api.cms.itqan.dev |
--api-key |
ITQAN_API_KEY |
none; needed only for assets that require access approval |
Development
uv sync
uv run pytest
uv build
Releases are published from version tags; see RELEASING.md.
Metadata
Release files for itqan-cli 0.1.0rc1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| itqan_cli-0.1.0rc1.tar.gz | 26.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| itqan_cli-0.1.0rc1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 50.9 kB
Release files / itqan_cli-0.1.0rc1.tar.gz
| Download URL | itqan_cli-0.1.0rc1.tar.gz |
|---|---|
| Size | 26.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d7db8ccdb2a3e4535a91a8caf310fb15e78c1a17f0de1799d287d1ce53846684
|
|
BLAKE2b-256 checksum How to use checksums |
82f915e51dad72d411c57894ebfa30b17f43ba4afd8ea7e9c39835c29f9f41ec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / itqan_cli-0.1.0rc1-py3-none-any.whl
| Download URL | itqan_cli-0.1.0rc1-py3-none-any.whl |
|---|---|
| Size | 24.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6181f272afad91d9fcb1ceaa27319257ed7d7f3df7231698b39ad343be6de972
|
|
BLAKE2b-256 checksum How to use checksums |
f774d14c15150c9b3fa927a82decba87a844773ec5dca40b1646703c4e0abf26
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency log