Skip to main content

Ultra-fast terminal table renderer written in C

Project description

⚡ speedtable

speedtable is an ultra-fast, C-based terminal table renderer for Python.
Designed for large datasets and low-latency rendering — with beautiful Rich-style Unicode output.

💡 Perfect for CLI tools, dataset previews, or any place you need fast + styled tables.


🚀 Features

  • Blazing-fast C implementation 🔥
  • Unicode box-style table formatting (like Rich’s HEAVY_HEAD)
  • Bold, colored headers with optional column type labels
  • Customizable:
    • Header color
    • Border color
    • Body text color
    • Type label color
    • Title text and color (italicized, centered above the table)

📦 Installation

pip install speedtable

🧪 Example Usage

import speedtable

table_data = {
    "columns": [
        {"name": "ID", "type": "int"},
        {"name": "Name", "type": "str"},
        {"name": "Age", "type": "int"}
    ],
    "rows": [
        {"ID": 1, "Name": "Luke", "Age": 21},
        {"ID": 2, "Name": "Joe", "Age": 45},
        {"ID": 3, "Name": "Alice", "Age": 56}
    ]
}

print(speedtable.render_table(
    table_data,
    header_color="green",
    border_color="magenta",
    body_color="white",
    type_color="red",
    title_text="Test Table",
    title_color="cyan"
))

📷 Output

SpeedTable Demo

🎨 Supported Color Names

Name Description
black Standard black
red Standard red
green Standard green
yellow Standard yellow
blue Standard blue
magenta Standard magenta
cyan Standard cyan
white Standard white
bright_black Gray (dim)
bold_red Bright bold red
bold_white Bold white (great for headers)

✨ Headers are always bold, and titles are always italicized.


💡 Why speedtable?

The Python rich library is beautiful, but may be too slow for rendering large tables in CLI environments.
speedtable gives you the same polished aesthetic — at native speed.


📄 License

MIT © Luke Canada

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

speedtable-1.0.1.tar.gz (36.3 kB view details)

Uploaded Source

File details

Details for the file speedtable-1.0.1.tar.gz.

File metadata

  • Download URL: speedtable-1.0.1.tar.gz
  • Upload date:
  • Size: 36.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for speedtable-1.0.1.tar.gz
Algorithm Hash digest
SHA256 a781401cf46195591e65dfe035361338d581851416e0629a7d2b4aabdc732754
MD5 be71a44c3cc31c02f14f4cd5bf10f246
BLAKE2b-256 e4cd27e053819438d416797db8458001847a781b63a1750905d6815ef879d3cb

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