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.0.tar.gz (57.6 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.0-cp38-abi3-win_amd64.whl (232.9 kB view details)

Uploaded CPython 3.8+Windows x86-64

inkling_loader-0.2.0-cp38-abi3-musllinux_1_2_x86_64.whl (603.5 kB view details)

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

inkling_loader-0.2.0-cp38-abi3-musllinux_1_2_aarch64.whl (565.1 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ ARM64

inkling_loader-0.2.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (396.8 kB view details)

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

inkling_loader-0.2.0-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.0-cp38-abi3-macosx_11_0_arm64.whl (339.7 kB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

inkling_loader-0.2.0-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.0.tar.gz.

File metadata

  • Download URL: inkling_loader-0.2.0.tar.gz
  • Upload date:
  • Size: 57.6 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.0.tar.gz
Algorithm Hash digest
SHA256 8be8f90262f7fce1b81fb809ae668c0ecd453e786d8641bcb9ff86f0af81572e
MD5 da416be35fd295d5dc49ae2b972a64cb
BLAKE2b-256 d62274cb3746be71f9f99ca88e9084ef0ec098e7f27e07e9d237419be4b5ce31

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.0.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.0-cp38-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.0-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 a6f0e3c9be628fa0317e327f62a876dee061d6eeb55e42303009f6e2efd27583
MD5 c34ec068b450ee2ae67fb83e06610c64
BLAKE2b-256 00aab0f5e9aba7ced6ae9d63581b22b2f117ed075f59f251a5a2c6b50951ffe4

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.0-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.0-cp38-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.0-cp38-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e176e0b083ece0f520db4c30a47eafa539fd5d07231b66d73bffd0e9b0897295
MD5 901cc14c6d2a22ef91c42b69002bc6cc
BLAKE2b-256 eb60f7d4031a55e4f19106d9aa9c326651fd2bdbc0befc9f0f7bfe1a749f3d9a

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.0-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.0-cp38-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.0-cp38-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b4e0b9aecb988dd8f0e8b4d827bef3e90c696f767f99e4695bdecdbae574ca30
MD5 774ddb3c2a3feab57975c4fbfd06a62a
BLAKE2b-256 10ae5a825bf071788b2cfd81779a447af285d1464be3a212280d2a71710ccf57

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.0-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.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b29b4ea4872eee1e6e5ceb1dad71e39f34b000b36617736ce375c7803a4b3d49
MD5 7c976caa0591199a04c856063f6bc68d
BLAKE2b-256 b259573ccfb7a91b39dd90d5059c8bdbcb6d1748160a2905b4042d996bb00863

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.0-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.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 18f4d5b078705594faa6e6dc0dbe14b81620ffd59d888e4e5ca1e01a03e46a7c
MD5 bc7ed31e885054a80f49e3493f0b02e3
BLAKE2b-256 265aba7376df52ecafe9b5ad682aa615662eeff232a118add7e9b0d37a84efe2

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.0-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.0-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.0-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0d986f5ae62eaf99f80fe7c5edd06a843fca5d5cbc03ab8b469a13f27b9107db
MD5 624a49680e5dd218acc8407d267dac0f
BLAKE2b-256 8b93e1fd9f2c9a14fc628f7a7e77cfc9dedcb0e847c20f7cab8159d7b2b2de4e

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.0-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.0-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for inkling_loader-0.2.0-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d3fd705e6189032514f12aeb10d9ca46b5fda976ad4f1b446226e84ea7a160b8
MD5 0fea67b10b6d070b15524fbad7509cd8
BLAKE2b-256 bc0d9e0930553e74cf0b69b45c11b0584922ca695d9d0d9ed30caf4cc8bbf94c

See more details on using hashes here.

Provenance

The following attestation bundles were made for inkling_loader-0.2.0-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

0.2.1

8 files

This release

0.2.0 This release

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