format-markdown-table

Generate well-formatted markdown tables from data with proper alignment and spacing. Use for report statistics, comparison tables, or summary data presentation.

$ Installer

git clone https://github.com/maslennikov-ig/claude-code-orchestrator-kit /tmp/claude-code-orchestrator-kit && cp -r /tmp/claude-code-orchestrator-kit/.claude/skills/format-markdown-table ~/.claude/skills/claude-code-orchestrator-kit

// tip: Run this command in your terminal to install the skill


name: format-markdown-table description: Generate well-formatted markdown tables from data with proper alignment and spacing. Use for report statistics, comparison tables, or summary data presentation.

Format Markdown Table

Create properly formatted markdown tables with alignment and consistent spacing.

When to Use

  • Report statistics tables
  • Comparison tables
  • Summary data presentation
  • Metric dashboards in reports

Instructions

Step 1: Receive Table Data

Accept headers and rows as input.

Expected Input:

{
  "headers": ["Column 1", "Column 2", "Column 3"],
  "rows": [
    ["Value 1", "Value 2", "Value 3"],
    ["Value 4", "Value 5", "Value 6"]
  ],
  "alignment": ["left", "center", "right"]
}

Alignment (optional):

  • left: Left-aligned (default)
  • center: Center-aligned
  • right: Right-aligned

Step 2: Calculate Column Widths

Determine maximum width for each column.

Width Calculation:

  • Include header width
  • Include all row values
  • Add padding (1 space on each side)
  • Minimum width: 3 characters

Step 3: Format Header Row

Create header row with proper spacing.

Format:

| Header 1 | Header 2 | Header 3 |

Step 4: Format Separator Row

Create separator with alignment indicators.

Alignment Indicators:

  • Left: :--- or ---
  • Center: :---:
  • Right: ---:

Format:

|----------|:--------:|---------:|

Step 5: Format Data Rows

Create data rows with consistent spacing.

Format:

| Value 1  | Value 2  | Value 3  |
| Value 4  | Value 5  | Value 6  |

Step 6: Return Complete Table

Return formatted markdown table.

Expected Output:

| Column 1 | Column 2 | Column 3 |
|----------|:--------:|---------:|
| Value 1  | Value 2  | Value 3  |
| Value 4  | Value 5  | Value 6  |

Error Handling

  • Empty Headers: Return error requesting headers
  • Empty Rows: Return warning, create table with headers only
  • Mismatched Columns: Pad short rows with empty cells
  • Invalid Alignment: Use 'left' as default, warn

Examples

Example 1: Simple Statistics Table

Input:

{
  "headers": ["Metric", "Count", "Percentage"],
  "rows": [
    ["Critical Bugs", "3", "13%"],
    ["High Bugs", "8", "35%"],
    ["Medium Bugs", "12", "52%"]
  ],
  "alignment": ["left", "right", "right"]
}

Output:

| Metric        | Count | Percentage |
|---------------|------:|-----------:|
| Critical Bugs |     3 |        13% |
| High Bugs     |     8 |        35% |
| Medium Bugs   |    12 |        52% |

Example 2: Comparison Table

Input:

{
  "headers": ["Feature", "Before", "After"],
  "rows": [
    ["Build Time", "45s", "12s"],
    ["Test Time", "2m 30s", "1m 15s"],
    ["Bundle Size", "2.3 MB", "1.8 MB"]
  ],
  "alignment": ["left", "center", "center"]
}

Output:

| Feature     | Before  |  After  |
|-------------|:-------:|:-------:|
| Build Time  |   45s   |   12s   |
| Test Time   | 2m 30s  | 1m 15s  |
| Bundle Size | 2.3 MB  | 1.8 MB  |

Example 3: Priority Distribution

Input:

{
  "headers": ["Priority", "Open", "Fixed", "Total"],
  "rows": [
    ["P0", "2", "5", "7"],
    ["P1", "5", "3", "8"],
    ["P2", "12", "8", "20"]
  ]
}

Output:

| Priority | Open | Fixed | Total |
|----------|------|-------|-------|
| P0       | 2    | 5     | 7     |
| P1       | 5    | 3     | 8     |
| P2       | 12   | 8     | 20    |

Example 4: Empty Rows (Header Only)

Input:

{
  "headers": ["Name", "Value", "Status"],
  "rows": []
}

Output:

| Name | Value | Status |
|------|-------|--------|

Validation

  • Formats headers correctly
  • Creates proper separators
  • Aligns columns as specified
  • Handles various data types (numbers, text)
  • Pads columns for consistent width
  • Handles empty rows gracefully

Supporting Files

  • examples.md: Table formatting examples (see Supporting Files section)

Repository

maslennikov-ig
maslennikov-ig
Author
maslennikov-ig/claude-code-orchestrator-kit/.claude/skills/format-markdown-table
27
Stars
8
Forks
Updated4d ago
Added6d ago