Skip to main content
Pre-release

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)

Source distribution for itqan-cli 0.1.0rc1
File Size Uploaded
itqan_cli-0.1.0rc1.tar.gz 26.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for itqan-cli 0.1.0rc1
File Interpreter ABI Platform
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 log

Release 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

Release history Release notifications | RSS feed

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

This release

0.1.0rc1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page