What this does
Turns a JSON array of objects into a GitHub-flavored Markdown table that you can paste into a README, pull request, issue, or wiki. The keys become the header row and each object becomes a row.
Example
Input
[
{
"id": 1,
"name": "Ada",
"city": "London",
"score": 9.5
},
{
"id": 2,
"name": "Grace",
"city": "New York",
"score": 8
}
]Output with default options
| id | name | city | score |
| --: | ----- | -------- | ----: |
| 1 | Ada | London | 9.5 |
| 2 | Grace | New York | 8 |
Behavior
- Columns are the union of keys across all objects, in first-seen order; missing values are left blank.
- Pipe characters in values are escaped as
\|and line breaks become<br>, so a cell never breaks the table. - Align columns with padding pads cells so the raw Markdown is readable too (width is counted in characters, so wide CJK text or emoji may look uneven in a monospace editor but renders correctly).
- Right-align numeric columns uses
--:in the separator row for columns where every non-empty value is a JSON number. - Nested objects and arrays are flattened into columns like
address.city, or kept as JSON text in one cell. - Arrays of arrays and arrays of plain values are supported; mixed arrays and scalars are reported as errors.
Privacy
The conversion runs in your browser. The JSON is never uploaded.