terminaltables3
Generate simple tables in terminals from a nested list of strings. Fork of terminaltables.
What it is and what it does
terminaltables3 is a maintained fork of the archived terminaltables library, designed to render formatted tables directly in terminal and console applications. It takes a nested list of strings and outputs them as aligned, bordered tables using ASCII or other box-drawing characters, with support for multi-line cell content. The package has no external runtime dependencies and works across Python 3.8 through 3.13 on Windows, macOS, and Linux.
It is intended as a drop-in replacement for the original terminaltables, allowing you to swap the import namespace from `terminaltables` to `terminaltables3` without changing your code logic. The fork maintains ecosystem compatibility and adds type annotations while remaining responsive to community contributions. It is useful for CLI tools, monitoring dashboards, and any application that needs to display tabular data in a terminal.
Use it for:
- Display structured data (logs, metrics, query results) in CLI tools and scripts.
- Render status tables in monitoring or reporting applications that run in a terminal.
- Format multi-column output in shell-based utilities or batch processing scripts.
- Build interactive terminal UIs that need aligned, readable table layouts.
- Replace the archived terminaltables library in existing projects without code refactoring.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Renders formatted tables in terminal output from nested lists of strings, supporting multi-line rows with ASCII or other box-drawing styles.
Yes, if you need terminal table formatting. Low install friction, no dependencies, permissive license, and broad Python version support make it a practical choice. The aging maintenance status (754 days since last release) is a minor concern, but the repository is not archived and remains responsive; monitor for critical issues before adopting in new projects where long-term active development is essential.
Install
terminaltables3 on PyPI
pip
pip install terminaltables3uv
uv add terminaltables3poetry
poetry add terminaltables3Installing terminaltables3
Before you install
Low friction: pure Python, no runtime dependencies, and distributed as a wheel. Maintenance status is aging—last release was 754 days ago, though the repository remains active with a recent commit on 2025-05-13.
License in practice
MIT license (permissive) places no restrictions on use, modification, or redistribution in proprietary or open-source projects.
Quickstart
pip install terminaltables3
from terminaltables3 import AsciiTable
table_data = [
["Heading1", "Heading2"],
["row1 column1", "row1 column2"],
]
table = AsciiTable(table_data)
print(table.table)
Verify before relying
- Whether type annotations are complete across the full API surface.
- Compatibility guarantees with the original terminaltables project beyond basic drop-in replacement.
- Performance characteristics with very large tables or deeply nested multi-line rows.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | aging — 754 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 246,477/month — #8,709 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: terminaltables3-4.0.0-py3-none-any.whl
Keywords: Shell, Bash, ANSI, ASCII, terminal, tables
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
terminaltablesRenders formatted ASCII tables in terminal…
permissive · top 5,000 on PyPI
reprintBinds Python variables to multi-line terminal…
permissive · top 15,000 on PyPI
table-loggerTableLogger formats and outputs tabular data to…
copyleft · top 15,000 on PyPI
jcConverts output from popular CLI tools,…
permissive · top 15,000 on PyPI
asciitreeRenders tree data structures as formatted ASCII…
permissive · top 5,000 on PyPI
beautifultablePrints tabular data to the terminal in a…
permissive · top 15,000 on PyPI
texttableCreates formatted ASCII tables for console…
permissive · top 1,000 on PyPI
cli-helpersCLI Helpers provides utilities for common…
permissive · top 5,000 on PyPI
PTablePTable formats tabular data into visually…
permissive · top 15,000 on PyPI
consolekitConsolekit extends click with additional…
permissive · top 15,000 on PyPI