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.2.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.2-cp38-abi3-win_amd64.whl (232.9 kB view details)

Uploaded CPython 3.8+Windows x86-64

inkling_loader-0.2.2-cp38-abi3-musllinux_1_2_x86_64.whl (603.2 kB view details)

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

inkling_loader-0.2.2-cp38-abi3-musllinux_1_2_aarch64.whl (565.5 kB view details)

Uploaded CPython 3.8+musllinux: musl 1.2+ ARM64

inkling_loader-0.2.2-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (397.1 kB view details)

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

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

Uploaded CPython 3.8+macOS 11.0+ ARM64

inkling_loader-0.2.2-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.2.tar.gz.

File metadata

  • Download URL: inkling_loader-0.2.2.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.2.tar.gz
Algorithm Hash digest
SHA256 e633ae7621f853fd4105163475d7db4ba04228b3c472da940fb0d6a5f640dad3
MD5 86cf4486c79a6b622b3b224b0309f148
BLAKE2b-256 aa39844e9aed0f1d715e3e4ae3ad0d817dac32406c92fc67697a08d54ee1cb46

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for inkling_loader-0.2.2-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 96ceb7b5b5f8ec2a2a19265131b1b000802b65d7fcaeb5c1cf2b8491b2e9055f
MD5 d9eba5de127334bda334deff26ef2110
BLAKE2b-256 2e5344425ccff09bce9b1db1b3d8b2d46addcdfaf5a3a20bd3a3f0e47183f3b1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for inkling_loader-0.2.2-cp38-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a9dbb5231efa0d8c846b08e0adb60c4f386f463d019f8d2a572e1a2b4aad8872
MD5 723c5fc48152468a25012545ea559860
BLAKE2b-256 d05b9a4c4fb25a28bf3b61fc312c35e1a07441068ffb9759de8e38fcc470dde0

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for inkling_loader-0.2.2-cp38-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2dcb5042896bf2ae526e4662ce0689fb91a4546547d5fec6294292235545c3d7
MD5 fc0ed1bec1b9ffc288a3be098a3b30ab
BLAKE2b-256 70dfeb36302a2445db03a05d8b2951c8798e5592488a136c176900c6f532703c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for inkling_loader-0.2.2-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e640da203bd613b2d174a7fd792fa3d3f7992ac9c41886f835a8cc576879f282
MD5 ad0d5726cab948a0f5fe7fbf9bfca6d7
BLAKE2b-256 5b6d518af1f9b9eaf42f80545e42f54def987bf48a550db9f31cb94738339e37

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for inkling_loader-0.2.2-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9b9ae7d3c741f7c68cc923fb313eac3d089218a50a86c352ba3adf4ffbd29a66
MD5 40d491306af9fe9dc6ea69a7128573f9
BLAKE2b-256 02ce0a7c70ebbe8f1e6f45e0a3e65367199301117e6bd18633fdfe140ab88205

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for inkling_loader-0.2.2-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5afb80162bc12a5b9e3d18d0bd00677c9af231a20811498c62cb62e33d76bc7b
MD5 a21f91f677d0735e0422314b06b77ca3
BLAKE2b-256 c0de8e2adb0482971d563194cf84b9b55d47216aa8963705311e7a56b230c773

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for inkling_loader-0.2.2-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a81a6ff9a3101aed5ec9cd1eae61947dcc98cb3f1b358d184fa8ae449265836d
MD5 034b83f43a762d8d8803552de1584977
BLAKE2b-256 a87ead70b44c1cdfdd35442e026761589b2d0dcde2ad5e7b87871672f9753456

See more details on using hashes here.

Provenance

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

This release

0.2.2 This release

8 files

0.2.1

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