Skip to main content

inkling (Python)

Reveal ASCII art as a progress indicator, from Python. Same engine as the Rust crate, exposed as a tiny extension built with PyO3. It installs as inkling-loader and imports as inkling.

Inkling revealing ASCII art in rainbow as a task runs

pip install inkling-loader

Determinate, like tqdm but the bar is a drawing:

from inkling import Loader

with Loader(total=len(items), rainbow=True) as bar:
    for it in items:
        work(it)
        bar.inc()

A download, setting the position as bytes arrive:

bar = Loader(total=content_length, art_path="dragon.txt")
for chunk in response:
    file.write(chunk)
    bar.inc(len(chunk))
bar.finish()

Log while the reveal is live. println puts a line above the art and redraws beneath it, so nothing lands in the middle of the drawing:

with Loader(total=len(files), geodesic=True) as bar:
    for path in files:
        if check(path):
            bar.println(f"ok {path}")
        bar.inc()

The package ships py.typed and full type stubs, so editors and type checkers see the whole surface rather than an opaque native module.

Method Effect
inc(delta=1) advance the position
set(pos) set the absolute position
set_length(total) change the total
set_message(text) caption beneath the art
println(line) print a line above the live reveal
finish() / finish_and_clear() finish, keeping or erasing the art
Property Value
position, length current and total units of work
elapsed seconds since the loader started
rate average units per second
eta estimated seconds remaining, or None

Constructor keywords: total, art, art_path, ordering ("auto", "geodesic", "scanline", "reading", "ltr", "rtl"), the shorthands rainbow, geodesic and reading, plus light, color, head, body, feather, easing, start, bridge, and message.

The inkling family

This is the Python package. The same engine ships five ways:

  • inkling-loader on PyPI (this package), for Python. pip install inkling-loader, import as inkling.
  • inkling-loader on crates.io, the Rust library. cargo add inkling-loader.
  • inkling-cli, the inkling command, to drive a reveal from any language through a pipe. cargo install inkling-cli.
  • inkling-loader on npm, the Node addon. npm install inkling-loader.
  • inkling-wasm on npm, the WebAssembly build for the browser.

Building from source

pip install maturin
maturin develop            # build and install into the current venv
maturin build --release    # produce a wheel in target/wheels

Built from the inkling Rust core. License: MIT.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

inkling_loader-0.2.1.tar.gz (57.7 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

inkling_loader-0.2.1-cp38-abi3-win_amd64.whl (232.9 kB view details)

Uploaded CPython 3.8+Windows x86-64

inkling_loader-0.2.1-cp38-abi3-musllinux_1_2_x86_64.whl (603.3 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ x86-64

inkling_loader-0.2.1-cp38-abi3-musllinux_1_2_aarch64.whl (565.4 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ ARM64

inkling_loader-0.2.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (397.0 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ x86-64

inkling_loader-0.2.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (389.0 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ ARM64

inkling_loader-0.2.1-cp38-abi3-macosx_11_0_arm64.whl (339.7 kB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

inkling_loader-0.2.1-cp38-abi3-macosx_10_12_x86_64.whl (348.1 kB view details)

Uploaded CPython 3.8+macOS 10.12+ x86-64

File details

Details for the file inkling_loader-0.2.1.tar.gz.

File metadata

  • Download URL: inkling_loader-0.2.1.tar.gz
  • Upload date:
  • Size: 57.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for inkling_loader-0.2.1.tar.gz
Algorithm Hash digest
SHA256 29772659c86520db130a13de1a824755c99c9beeb17f6996ce0ba547a1ccb542
MD5 d88395b941854a006af8fddba0a8d081
BLAKE2b-256 0d7623240a8af8af952c5089e7baebc9d89d636d8097efbf0d677954071e5931

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.1.tar.gz:

Publisher: wheels.yml on codizzler/inkling

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file inkling_loader-0.2.1-cp38-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.1-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e0dc5fb568befa58de0b935723439d2b017b24cbad925637a1be159f1cf7bd47
MD5 35686fcba22fbafcd2830683b53a1b90
BLAKE2b-256 5e8fa68d1a9834bd65c9f4bbbc3600ca4dfb1037a89b037a7eec3fbcf47340ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.1-cp38-abi3-win_amd64.whl:

Publisher: wheels.yml on codizzler/inkling

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file inkling_loader-0.2.1-cp38-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.1-cp38-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8fe26f46cd4f73102e01e493898ba302409794abf441a466409ebdff42b9f13b
MD5 596471549e9139b4bf03122c439961b5
BLAKE2b-256 2812bb4369a89730ae6b340e982ede0378f63635dea2ee0f6fdf9064cd6628a0

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.1-cp38-abi3-musllinux_1_2_x86_64.whl:

Publisher: wheels.yml on codizzler/inkling

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file inkling_loader-0.2.1-cp38-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.1-cp38-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 750f3c515bcefb6c50beab4f5afe4bdb80a3db674d2b421b4e5cd844d1fc016e
MD5 a50cfabe2db01798359e9556178ea1f1
BLAKE2b-256 5b820be97fff1fecc23add4a6497c5ffffc0c2454e6fdddffbd929d92c579ba0

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.1-cp38-abi3-musllinux_1_2_aarch64.whl:

Publisher: wheels.yml on codizzler/inkling

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file inkling_loader-0.2.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ffd521e6f006fda2d6517916b4dcfd165230696608c18e0ea089961febe0e01a
MD5 b621e21de3c070149cbb2700b4fea744
BLAKE2b-256 4aaba5ae9f283aa551a22e96a84e8bf5bf287137458e55830e7d86f74ae49338

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.1-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: wheels.yml on codizzler/inkling

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file inkling_loader-0.2.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a61fef0fcc04c00de1b8bed98712c10952f6a0c48210d0a52574aa2a6205aa33
MD5 42a3a53dbc5a6aab440419654023cc59
BLAKE2b-256 eadf1cdca60c8c32b78821d1cafff091f0f9c9c5aa02f09d80d850ba93a1c557

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.1-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: wheels.yml on codizzler/inkling

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file inkling_loader-0.2.1-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.1-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4785468deeafef8c4c27c4d6a52065c60c7736cd616c5a09013583abc4f056aa
MD5 338aaae2fa546ce575191f86a444dcf7
BLAKE2b-256 5796fef13f4cb5322f4b7b9fbdb0300ba2f585990c12cf4cd70760c39a600864

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.1-cp38-abi3-macosx_11_0_arm64.whl:

Publisher: wheels.yml on codizzler/inkling

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file inkling_loader-0.2.1-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.1-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a9c1a2eeea92e723f8b1461d660bfd0baeecb1b2495036307d748d33f9c01133
MD5 29c5f94144ed6e8a065372830a8ca5de
BLAKE2b-256 f47dfcc55ec09b2ebfc8029f24b17617877ccc0ab1df4099b7d813c7ca3c7d13

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.1-cp38-abi3-macosx_10_12_x86_64.whl:

Publisher: wheels.yml on codizzler/inkling

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.2.2

8 files

This release

0.2.1 This release

8 files

0.2.0

8 files

0.1.5

4 files

0.1.4

4 files

0.1.2

4 files

0.1.1

4 files

0.0.1

4 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