Skip to main content

No project description provided

Project description

barkeep

Small, C++-based python library to display async animations, counters, and progress bars.

Build status pypi

Installation: pip install barkeep


  • Display a waiting animation with a message:

    import time
    import barkeep as bk
    
    anim = bk.Animation(message="Working")
    anim.show()
    time.sleep(10)  # do work
    anim.done()
    
  • Supports several styles:

    anim = bk.Animation(message="Working", style=bk.Earth)
    
  • Display a counter to monitor a numeric variable while waiting:

    c = bk.Counter(message="Reading lines", speed=1.0, speed_unit="line/s")
    c.show()
    for i in range(505):
        time.sleep(0.013)  # read & process line
        c += 1
    c.done()
    
  • Display a progress bar to monitor a numeric variable and measure its completion by comparing against a total:

    bar = bk.ProgressBar(message="Reading lines", speed=1.0, speed_unit="line/s", total=505)
    bar.show()
    for i in range(505):
        time.sleep(0.013)  # read & process line
        bar += 1
    bar.done()
    
  • Combine diplays using | operator to monitor multiple variables:

    import random
    
    sents = bk.ProgressBar(total=1010, message="Sents")
    toks = bk.Counter(message="Toks", speed_unit="tok/s", speed=1.0)
    bar = sents | toks
    bar.show()
    for i in range(1010):
        # do work
        time.sleep(0.013)
        sents += 1
        toks += 1 + random.randrange(5)
    bar.done()
    
  • Use "no tty" mode to, e.g., output to log files:

    bar = bk.ProgressBar(total=401, message="Sents", speed=1.0, interval=1.0, no_tty=True)
    bar.show()
    for i in range(401):
        time.sleep(0.013)
        bar += 1
    bar.done()
    

    no_tty achieves two things:

    • Change the delimiter from \r to \n to avoid wonky looking output in your log files.
    • Change the default interval to a minute to avoid overwhelming logs (in the example above, we set the interval ourselves explicitly).

Project details


Download files

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

Source Distribution

barkeep-0.0.6.tar.gz (135.3 kB view hashes)

Uploaded Source

Built Distributions

barkeep-0.0.6-cp312-cp312-musllinux_1_1_x86_64.whl (719.9 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

barkeep-0.0.6-cp312-cp312-musllinux_1_1_s390x.whl (771.8 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.1+ s390x

barkeep-0.0.6-cp312-cp312-musllinux_1_1_ppc64le.whl (766.0 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.1+ ppc64le

barkeep-0.0.6-cp312-cp312-musllinux_1_1_i686.whl (782.6 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.1+ i686

barkeep-0.0.6-cp312-cp312-musllinux_1_1_aarch64.whl (699.4 kB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.1+ ARM64

barkeep-0.0.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (229.4 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

barkeep-0.0.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (223.9 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ s390x

barkeep-0.0.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (241.2 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ppc64le

barkeep-0.0.6-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (236.5 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686

barkeep-0.0.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (217.2 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

barkeep-0.0.6-cp312-cp312-macosx_11_0_arm64.whl (486.3 kB view hashes)

Uploaded CPython 3.12 macOS 11.0+ ARM64

barkeep-0.0.6-cp312-cp312-macosx_10_9_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.12 macOS 10.9+ x86-64

barkeep-0.0.6-cp311-cp311-musllinux_1_1_x86_64.whl (721.4 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

barkeep-0.0.6-cp311-cp311-musllinux_1_1_s390x.whl (772.9 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ s390x

barkeep-0.0.6-cp311-cp311-musllinux_1_1_ppc64le.whl (768.1 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ ppc64le

barkeep-0.0.6-cp311-cp311-musllinux_1_1_i686.whl (784.5 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

barkeep-0.0.6-cp311-cp311-musllinux_1_1_aarch64.whl (700.8 kB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.1+ ARM64

barkeep-0.0.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (230.3 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

barkeep-0.0.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (224.5 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ s390x

barkeep-0.0.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (243.8 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ppc64le

barkeep-0.0.6-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (237.3 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686

barkeep-0.0.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (219.2 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

barkeep-0.0.6-cp311-cp311-macosx_11_0_arm64.whl (486.3 kB view hashes)

Uploaded CPython 3.11 macOS 11.0+ ARM64

barkeep-0.0.6-cp311-cp311-macosx_10_9_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.11 macOS 10.9+ x86-64

barkeep-0.0.6-cp310-cp310-musllinux_1_1_x86_64.whl (720.3 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

barkeep-0.0.6-cp310-cp310-musllinux_1_1_s390x.whl (771.6 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ s390x

barkeep-0.0.6-cp310-cp310-musllinux_1_1_ppc64le.whl (767.1 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ ppc64le

barkeep-0.0.6-cp310-cp310-musllinux_1_1_i686.whl (782.9 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

barkeep-0.0.6-cp310-cp310-musllinux_1_1_aarch64.whl (699.8 kB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.1+ ARM64

barkeep-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (229.2 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

barkeep-0.0.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (223.8 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ s390x

barkeep-0.0.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (242.9 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ppc64le

barkeep-0.0.6-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (236.6 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686

barkeep-0.0.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (217.8 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

barkeep-0.0.6-cp310-cp310-macosx_11_0_arm64.whl (486.3 kB view hashes)

Uploaded CPython 3.10 macOS 11.0+ ARM64

barkeep-0.0.6-cp310-cp310-macosx_10_9_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.10 macOS 10.9+ x86-64

barkeep-0.0.6-cp39-cp39-musllinux_1_1_x86_64.whl (721.2 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

barkeep-0.0.6-cp39-cp39-musllinux_1_1_s390x.whl (771.7 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ s390x

barkeep-0.0.6-cp39-cp39-musllinux_1_1_ppc64le.whl (766.1 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ ppc64le

barkeep-0.0.6-cp39-cp39-musllinux_1_1_i686.whl (782.9 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

barkeep-0.0.6-cp39-cp39-musllinux_1_1_aarch64.whl (700.0 kB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.1+ ARM64

barkeep-0.0.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (229.1 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

barkeep-0.0.6-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl (224.1 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ s390x

barkeep-0.0.6-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (242.9 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ppc64le

barkeep-0.0.6-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (236.6 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686

barkeep-0.0.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (218.0 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

barkeep-0.0.6-cp39-cp39-macosx_11_0_arm64.whl (644.7 kB view hashes)

Uploaded CPython 3.9 macOS 11.0+ ARM64

barkeep-0.0.6-cp39-cp39-macosx_10_9_x86_64.whl (1.2 MB view hashes)

Uploaded CPython 3.9 macOS 10.9+ x86-64

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page