great-tables
Publication-quality tables in Python with rich styling, formatting, conditional formatting, and export to HTML/images - inspired by R's gt package
Best use case
great-tables is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Publication-quality tables in Python with rich styling, formatting, conditional formatting, and export to HTML/images - inspired by R's gt package
Teams using great-tables should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/great-tables/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How great-tables Compares
| Feature / Agent | great-tables | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Publication-quality tables in Python with rich styling, formatting, conditional formatting, and export to HTML/images - inspired by R's gt package
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Great Tables
## When to Use This Skill
### USE Great Tables when:
- **Publication tables** - Creating tables for reports, papers, or presentations
- **Data presentation** - Professional display of analysis results
- **Conditional formatting** - Highlighting patterns with colors and icons
- **Complex layouts** - Multi-level headers, grouped rows, footnotes
- **HTML reports** - Interactive tables for web-based reports
- **Quick formatting** - Need polished tables without manual styling
- **Dashboard components** - Tables in Streamlit/Dash applications
- **Export requirements** - Need PNG or PDF output
### DON'T USE Great Tables when:
- **Large datasets** - Over 1000 rows for display (use pagination)
- **Interactive editing** - Need editable cells (use Streamlit data_editor)
- **Real-time updates** - Streaming data display
- **Complex interactivity** - Sorting, filtering (use DataTables or AG Grid)
- **Raw data exploration** - Use pandas display or ydata-profiling
## Prerequisites
```bash
# Basic installation
pip install great_tables
# With all optional dependencies
pip install great_tables pandas polars
# For image export (PNG/PDF)
pip install great_tables webshot
# Using uv (recommended)
uv pip install great_tables pandas polars
# Verify installation
python -c "from great_tables import GT; print('Great Tables ready!')"
```
## Complete Examples
### Example 1: Financial Report Table
```python
from great_tables import GT, html
from great_tables import style, loc
import pandas as pd
import numpy as np
def create_financial_report(
data: pd.DataFrame,
title: str = "Financial Report",
output_path: str = "financial_report.html"
*See sub-skills for full details.*
### Example 2: Sales Dashboard Table
```python
from great_tables import GT, html
from great_tables import style, loc
import pandas as pd
import numpy as np
def create_sales_dashboard_table(output_path: str = "sales_dashboard.html") -> GT:
"""
Create sales dashboard table with KPIs and sparklines.
"""
*See sub-skills for full details.*
### Example 3: Scientific Data Table
```python
from great_tables import GT
from great_tables import style, loc
import pandas as pd
import numpy as np
def create_scientific_table(output_path: str = "scientific_table.html") -> GT:
"""
Create publication-quality scientific data table.
"""
*See sub-skills for full details.*
## Version History
- **1.0.0** (2026-01-17): Initial release
- Basic table creation and styling
- Column formatting (currency, percent, date)
- Conditional formatting and color scales
- Row and column grouping
- Footnotes and annotations
- Export to HTML and images
- Complete report examples
- Integration with Streamlit and Polars
- Best practices and troubleshooting
## Resources
- **Official Documentation**: https://posit-dev.github.io/great-tables/
- **GitHub**: https://github.com/posit-dev/great-tables
- **PyPI**: https://pypi.org/project/great-tables/
- **Gallery**: https://posit-dev.github.io/great-tables/examples/
---
**Create publication-quality tables with Great Tables - beautiful data presentation made easy!**
## Sub-Skills
- [1. Basic Table Creation](1-basic-table-creation/SKILL.md)
- [2. Column Formatting](2-column-formatting/SKILL.md)
- [3. Styling and Colors](3-styling-and-colors/SKILL.md)
- [4. Conditional Formatting](4-conditional-formatting/SKILL.md)
- [5. Grouped Rows and Columns](5-grouped-rows-and-columns/SKILL.md)
- [6. Footnotes and Annotations (+1)](6-footnotes-and-annotations/SKILL.md)
- [Great Tables with Streamlit (+1)](great-tables-with-streamlit/SKILL.md)
- [1. Keep Tables Focused (+3)](1-keep-tables-focused/SKILL.md)
- [Common Issues](common-issues/SKILL.md)Related Skills
pyproject-toml
Configure Python projects with pyproject.toml for modern packaging, tools, and dependency management
python-scientific-computing
Python for engineering analysis, numerical computing, and scientific workflows using NumPy, SciPy, SymPy
pandas-data-processing
Pandas for time series analysis, OrcaFlex results processing, and marine engineering data workflows
numpy-numerical-analysis
NumPy for matrix operations, FFT, linear algebra, and numerical computations in marine engineering
docx-templates
Template-based Word document generation using Jinja2 syntax. Create reports, contracts, and documents with loops, conditionals, tables, and mail merge capabilities.
ydata-profiling
Automated data quality reports with comprehensive variable analysis, missing value detection, correlations, and HTML report generation - formerly pandas-profiling
sweetviz
Automated EDA comparison reports with target analysis, feature comparison, and HTML report generation for pandas DataFrames
bsee-sodir-extraction
Extract and process energy data from BSEE (Gulf of Mexico) and SODIR (Norway) regulatory databases
autoviz
Automatic exploratory data analysis and visualization with a single line of code - generates comprehensive charts, detects patterns, and exports to HTML/notebooks
pandasai
Conversational data analysis using natural language queries on pandas DataFrames. Use when you want to ask plain-English questions about data, generate charts, explain transformations, or build exploratory analysis interfaces — all powered by an LLM backend. Supports OpenAI, Anthropic, Google Gemini, Azure OpenAI, and local models. Handles single DataFrames (SmartDataframe) and multi-table joins (SmartDatalake).
langchain
Build production-ready LLM applications with chains, agents, memory, tools, and RAG pipelines using the LangChain framework
doc-extraction-naval-architecture-structural-scantling-tables
Sub-skill of doc-extraction-naval-architecture: Structural Scantling Tables.