olekukonko/tablewriter

ASCII table in golang

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 23 minutes ago
Added to GitGenius on September 14th, 2026
Created on February 4th, 2014
Open Issues & Pull Requests: 3 (+0)
GitHub issues: Enabled
Number of forks: 402
Total Stargazers: 4,813 (+0)
Total Subscribers: 40 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 4.4 days
Mean response time: 407.9 days
90th percentile: 1588.6 days
Tracked items: 111

Most active contributors

Sign in to see contributor activity.

How this project is maintained

Work labelled "Usage & Discussion" is answered fastest, typically in about 3 hours, while "Feature Request" waits about 31 hours. Three people close 95% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 1
New in 7 days: 1
Closed in 7 days: 2
Avg open age: 1 days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 1
Closed in 7 days: 2
Comments in 7 days: 2
Events in 7 days: 3

Top labels

  • Feature Request (22)
  • Usage & Discussion (15)
  • enhancement (14)
  • bug (9)
  • Investigate (8)
  • waiting info (3)
  • duplicate (2)
  • invalid (1)

Most active issues this week

Detailed Description

Tablewriter is a Go library for generating rich text-based tables in multiple output formats including ASCII, Unicode, Markdown, HTML, and colorized terminals.

The library solves the problem of rendering structured data as formatted tables in command-line tools, logs, and web applications. It accepts data from various sources including CSV, structs, slices, or streaming input, then renders that data through configurable renderers that control appearance and format. The architecture separates concerns into distinct components: renderers handle output format conversion, a Config struct manages overall table behavior, CellConfig controls formatting for specific sections, and visual styling is defined through Borders, Lines, Separators, and Symbols that determine which characters and boundaries appear in the output.

Developers building CLI tools will find the library particularly suited to their needs, especially when working with database results since it includes native support for sql.Null types and auto-escaping for HTML and Markdown output. The tool offers both simple usage through basic append operations and advanced capabilities like cell merging, hierarchical merging, and real-time streaming for large datasets. The README recommends using the legacy version for existing applications, while new projects should use the latest version which includes generics support and streaming APIs. Version 1.0.0 is explicitly flagged as containing missing functionality and should be avoided.

Development activity shows consistent maintenance with regular commits addressing bug fixes and feature additions. The project demonstrates responsiveness to issues and pull requests, indicating active engagement with users. Code quality appears prioritized through attention to performance optimization, including minimal memory allocations and buffer reuse strategies. The maintainers have invested in comprehensive documentation including multiple examples and detailed API guidance, suggesting a commitment to usability and developer experience.