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.3.tar.gz (36.6 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: speedtable-1.0.3.tar.gz
  • Upload date:
  • Size: 36.6 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.3.tar.gz
Algorithm Hash digest
SHA256 5e59d8fe73ac4b1893b2665037e1609ada1794a5d9b36ffad337793ac4aa3ed0
MD5 af927ef5d671ec3ecb9e6a4755e47def
BLAKE2b-256 e6d317366ee22b8f8a5372492bba51d58dfb43f1545f5e21187df08330199dc4

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