Skip to main content

No project description provided

Project description

TurboTerm

⚡ A high-performance, ultra-concise CLI and styling toolkit for Python, written in Rust 🦀

TurboTerm is minimal and efficient by all means:

  • Less code: Concise CLI syntax, ~50% less lines of code compared to Python's argparse.
  • Faster import: Lightweight import and loading times, multiple times faster than rich, click or typer.
  • Faster runtime: Every formatting/rendering logic is implemented in Rust, and optimized for performance.
  • No additional dependencies: TurboTerm is installed as a single wheel, without depending on any other Python package.
  • No feature bloat: TurboTerm focuses on the essentials: Decorators for minimal CLI, styled output, tables, and argument parsing.

Example

Example output

Benchmarks

Import time comparison

Performance vs Rich

Installation

pip install turboterm
# or
uv add turboterm

Quickstart

from turboterm import console
from turboterm.cli import Option, command, run

@command
def greet(
    name: str = Option(["--name", "-n"], default="World"),
):
    """Greet someone."""
    console.print(f"[bold]Hello, {name}![/bold]")

if __name__ == "__main__":
    run()
python app.py --name Alice
# Hello, Alice!

python app.py --help

For the full API reference see USAGE.md.

Development

git clone https://github.com/valentinstn/turboterm.git
cd turboterm
uv run maturin develop

Running tests

uv run python -m unittest discover tests

Running benchmarks

uv run python scripts/benchmark.py    # full benchmark + regenerate charts

License

MIT License

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

turboterm-0.1.4.tar.gz (84.2 kB view details)

Uploaded Source

Built Distributions

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

turboterm-0.1.4-cp311-abi3-win_amd64.whl (294.9 kB view details)

Uploaded CPython 3.11+Windows x86-64

turboterm-0.1.4-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (357.0 kB view details)

Uploaded CPython 3.11+manylinux: glibc 2.17+ ARM64

turboterm-0.1.4-cp311-abi3-macosx_11_0_arm64.whl (339.2 kB view details)

Uploaded CPython 3.11+macOS 11.0+ ARM64

turboterm-0.1.4-cp311-abi3-macosx_10_12_x86_64.whl (358.6 kB view details)

Uploaded CPython 3.11+macOS 10.12+ x86-64

turboterm-0.1.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (375.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

Details for the file turboterm-0.1.4.tar.gz.

File metadata

  • Download URL: turboterm-0.1.4.tar.gz
  • Upload date:
  • Size: 84.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.12.6

File hashes

Hashes for turboterm-0.1.4.tar.gz
Algorithm Hash digest
SHA256 df164764c29a43945fabf327f94fba7d47b74822422ba8c92f1b3bfa279e7fb5
MD5 4579e697d5b7305619640f7cfc67c7b4
BLAKE2b-256 b5140570ad6d1c2cc07e09b07ad9b4863916fe632abb408533a463de2089a4d6

See more details on using hashes here.

File details

Details for the file turboterm-0.1.4-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: turboterm-0.1.4-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 294.9 kB
  • Tags: CPython 3.11+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.12.6

File hashes

Hashes for turboterm-0.1.4-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e53b66662326eaf484c92d912025b93389843712808cf153375d0094ec8d800d
MD5 227dcf01b3aa970fb04303a906abb4af
BLAKE2b-256 6943bce63c149bda9b2443e202a7efe74959dedc2908f876ff8d95bcc6831e9d

See more details on using hashes here.

File details

Details for the file turboterm-0.1.4-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for turboterm-0.1.4-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a22eecaf2829576da534629ceb2d8cb8dbf3e3174bb76ad8b050f6458ed8428a
MD5 5580eead885ac23f4b9a460f48f13944
BLAKE2b-256 5ca6e0b0e96d721b1980c2d14fbd0fe8a3e4536b8ea3085cda6f31ed9579595c

See more details on using hashes here.

File details

Details for the file turboterm-0.1.4-cp311-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for turboterm-0.1.4-cp311-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7e28e8f657341f736ae1ea515b18a5030b98e4e635da8591c65b7f59695dd5a0
MD5 6d9a8d6e6466f8e0443961721c990971
BLAKE2b-256 02391e0bae1cbae7fd1cf1a8fe5aab16489ececdbf27df74bf64818c61aa22a5

See more details on using hashes here.

File details

Details for the file turboterm-0.1.4-cp311-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for turboterm-0.1.4-cp311-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1bf775e978e31f78a7d8e532d0ccbb7a1293767a8752a9ea1ad1e432aeea1c75
MD5 1735b2ff44ca712a5a48992ec02ddd71
BLAKE2b-256 87adaf76a6a6fc1f86d0149ae2a2b7173248b0f714d39842c2c3ad83c8a0483b

See more details on using hashes here.

File details

Details for the file turboterm-0.1.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for turboterm-0.1.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e00fe285759cf8201c6172a875962655b2945edc1ba999242f0b3b967c5f11a0
MD5 1b2fa91dad7b259c087771993ff5b10a
BLAKE2b-256 b261ea07792ea3206c2364561751d79d132a46ff123bb15b27805378ef457f12

See more details on using hashes here.

Supported by

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