columnar
A tool for printing data in a columnar format.
What it is and what it does
Columnar is a terminal table formatter that takes raw data (lists of lists) and produces aligned, bordered text output suitable for printing to the console. It handles column headers, text wrapping, wide characters (emojis, CJK text), and ANSI color codes. The library depends on toolz and wcwidth for utility functions and character width calculation.
You provide data, optional headers, and configuration like column selection, dropping empty columns, and pattern-based text transformation (for colorization or formatting). Columnar then sizes columns to fit the terminal width, wraps text as needed, and renders the table. It's designed for CLI tools, log output, and data inspection tasks where human-readable tabular display matters.
Use it for:
- Display structured data in CLI tools with aligned columns and borders for readability.
- Format query results or data exports for terminal inspection with automatic column sizing.
- Apply regex-based patterns to colorize or format cell contents for visual emphasis.
- Filter and select specific columns from wide datasets using regex matching.
- Render tables with emoji and multi-byte characters while preserving alignment.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Columnar formats tabular data into aligned, bordered text output for terminal display, with support for patterns, column selection, text wrapping, and wide characters.
Yes, if you need simple terminal table formatting and can accept an abandoned package. The library is stable, has no known vulnerabilities, and low install friction. However, do not rely on it for active bug fixes or Python version updates—if you need ongoing maintenance or support for newer Python versions, consider alternatives that are actively maintained.
Install
columnar on PyPI
pip
pip install columnaruv
uv add columnarpoetry
poetry add columnarInstalling columnar
Before you install
Low friction to install. The package is abandoned (last release 2021-12-27, 1691 days ago) with no active maintenance, so expect no bug fixes or updates.
License in practice
Licensed under MIT (permissive), so you can use, modify, and distribute freely with minimal restrictions.
Quickstart
pip install columnar
from columnar import columnar
data = [['Name', 'Value'], ['Example', 'Data']]
headers = ['Column1', 'Column2']
table = columnar(data, headers)
print(table)
Verify before relying
- Whether the package handles very large datasets efficiently or has known performance limitations.
- Current state of compatibility with Python versions beyond 3.7, given the classifier lists only 3.7.
- Performance characteristics when working with datasets containing many rows or columns.
Package facts
| License | not declared (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — toolz, wcwidth |
| Maintenance | abandoned — 1,691 days since the last release |
| First released | |
| Downloads | 1,630,072/month — #3,705 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: Columnar-1.4.1-py3-none-any.whl
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
texttableCreates formatted ASCII tables for console…
permissive · top 1,000 on PyPI
py-markdown-tableGenerates formatted markdown tables from lists…
permissive · top 5,000 on PyPI
pastelPastel adds colored text output to terminal…
permissive · top 5,000 on PyPI
gspread-formattingAdds complete cell formatting support to…
permissive · top 5,000 on PyPI
simple-colorsAdds colored and styled text output to terminal…
unclear · top 15,000 on PyPI
crayonsCrayons provides colored text output for…
permissive · top 15,000 on PyPI
ansicolorsEmbeds ANSI color and style codes into Python…
permissive · top 5,000 on PyPI
tabulateFormats and prints tabular data in plain text…
permissive · top 1,000 on PyPI
beautifultablePrints tabular data to the terminal in a…
permissive · top 15,000 on PyPI
ansiProvides ANSI escape codes for cursor movement…
permissive · top 15,000 on PyPI