JSON To Textile Table

Login

Email
Password

Don't have an account yet?

Go to Sign up

Input Data
Sample {{ showCoderInput ? 'Choose File' : 'Enter Data' }}

                                
Valid JSON Invalid JSON — Cannot convert to JSON Array
Output Data
{{ copied ? 'Copied!' : 'Copy to Clipboard' }} Download File
Properties
Convert JSON Array to Textile Table online — paste, edit, and download Textile.

Escape Characters:
Escape | . - ^ to avoid format conflicts
Row Header:
Add _. prefix to first row cells
Table Head Syntax:
Add |^. and |-. structural markers
Convert Restart

JSON to Textile Table — Free Online JSON to Textile Table Converter with Formatting Options

What Is Textile?

Textile is a lightweight text-to-HTML markup language created by Dean Allen in 2002. It converts plain-text shorthand into structured HTML without requiring users to write HTML tags directly. Textile uses simple punctuation-based syntax for headings, lists, links, images, emphasis, and tables.

Textile is used by several platforms and tools:

Platform / ToolUse Case
RedmineIssue tracking and project management — issue descriptions, comments, and wiki pages use Textile
TextpatternCMS — article body and excerpt fields use Textile
Basecamp ClassicProject management (legacy) — message formatting uses Textile
PublifyBlogging platform — content formatting
Movable TypeCMS — optional Textile text filter

Textile's table syntax is more compact than HTML tables and uses pipe | characters, similar to Markdown, but with additional modifiers for alignment, headers, row spans, and column spans.

What Is JSON?

JSON (JavaScript Object Notation) is a lightweight data-interchange format defined by RFC 8259. It represents structured data as arrays and key-value objects. REST APIs, configuration files, and data pipelines commonly output data as JSON.

Textile Table Syntax Reference

Understanding Textile table syntax helps you configure the tool's options correctly.

Basic Table

|_. Column A |_. Column B |_. Column C |
| Cell 1     | Cell 2     | Cell 3     |
| Cell 4     | Cell 5     | Cell 6     |

Syntax Elements

ModifierMeaningExample
|_. Header cell|_. Name | renders as <th>Name</th>
|_. Regular cell| Value | renders as <td>Value</td>
`^. `Top-aligned cell
`-. `Structural row marker
_. prefixRow header (bold first cell)_. | Name | makes the first cell a <th>
{color}. CSS styling`

Alignment Modifiers

ModifierAlignmentPlacement
<LeftAfter opening pipe: `
=CenterAfter opening pipe: `
>RightAfter opening pipe: `

Why Convert JSON to a Textile Table?

Use CaseBenefit
Redmine issue templatesPaste structured data as Textile tables in Redmine tickets and wiki pages
Textpattern contentInsert tabular data into CMS articles without writing HTML
Basecamp Classic messagesFormat project communications with clean tables
Data migrationConvert JSON exports into Textile for import into Textile-based platforms
Technical documentationWrite tables in Textile syntax for platforms that support it
Wiki contentPopulate wiki pages with structured data

Manually converting JSON to Textile tables is tedious, especially with many rows or columns. This tool automates the conversion instantly in your browser.

Core Features

1. Dual Input Modes

  • File Upload: Drag and drop or select a .json file.

  • Code Editor: Paste or type raw JSON into the built-in code editor with syntax highlighting and real-time validation.

2. Escape Characters

Toggle to escape Textile special characters (|, ., -, ^) within cell values. When your JSON data contains these characters, they can be misinterpreted as Textile formatting commands. Enabling this option prevents format conflicts.

Example — Escape Off:

|_. name |_. value |
| price: $9.99 | available |

Example — Escape On:

|_. name |_. value |
| price: \$9\.99 | available |

3. Row Header

Adds the _. prefix to the first row's cells, turning them into <th> header elements in the rendered HTML. Use this when your JSON data's first row should serve as column headers.

Example — Row Header Off:

| name | role | location |
| Alice | Engineer | Berlin |

Example — Row Header On:

|_. name |_. role |_. location |
| Alice | Engineer | Berlin |

4. Table Head Syntax

Adds |^. and |-. structural markers to create proper <thead> and <tbody> HTML sections. This is useful for accessibility and when the rendered table needs semantic HTML structure.

Example — Table Head Syntax On:

|^. |_. name |_. role |_. location |
|-. | Alice | Engineer | Berlin |
|-. | Bob | Designer | Tokyo |

5. Privacy by Design

All processing runs entirely in your browser. No data is uploaded to any server. The tool works offline after the initial page load.

How to Use This JSON to Textile Table Converter?

Step 1: Provide Your JSON Data

Choose one of two input methods:

  • Upload a file: Click "Choose File" and select a .json file from your computer, or drag the file into the upload area.

  • Paste data: Click "Enter Data" to switch to the code editor. Paste or type your JSON array. The editor validates syntax in real time — a green "Valid JSON" badge confirms correct formatting.

Step 2: Configure Output Options

Use the Properties panel on the right:

  1. Escape Characters: Enable if your data contains |, ., -, or ^ characters that could conflict with Textile syntax.

  2. Row Header: Enable to add |_. prefix to the first row (makes it a header row).

  3. Table Head Syntax: Enable to add |^. and |-. structural markers for proper <thead> / <tbody> HTML semantics.

Step 3: Convert

Click the Convert button. The Textile table output appears in the "Output Data" panel.

Step 4: Copy or Download

  • Click Copy to Clipboard to paste the result into your Redmine ticket, Textpattern article, or other Textile-supported platform.

  • Premium users can click Download File to save the output.

Sample Input

[
 {"name": "Alice", "role": "Engineer", "location": "Berlin"},
 {"name": "Bob", "role": "Designer", "location": "Tokyo"},
 {"name": "Carol", "role": "Manager", "location": "New York"}
]

Sample Output — All Options Enabled

|^. |_. name |_. role |_. location |
|-. | Alice | Engineer | Berlin |
|-. | Bob | Designer | Tokyo |
|-. | Carol | Manager | New York |

Rendered HTML (in Redmine / Textpattern)

namerolelocation
AliceEngineerBerlin
BobDesignerTokyo
CarolManagerNew York

Sample Output — Row Header Only (No Table Head Syntax)

|_. name |_. role |_. location |
| Alice | Engineer | Berlin |
| Bob | Designer | Tokyo |
| Carol | Manager | New York |

Sample Output — No Options (Plain Table)

| name | role | location |
| Alice | Engineer | Berlin |
| Bob | Designer | Tokyo |
| Carol | Manager | New York |

Textile vs. Markdown Tables

FeatureTextileMarkdown
Header cells|_. prefixFirst row separated by ---
Cell alignment<, =, > modifiers:---, :---:, ---: in separator
Structural markers`^. /
Row spans / col spans/\2. and \2. syntaxNot supported
CSS styling{color:red}. inlineNot supported
PlatformsRedmine, Textpattern, Basecamp ClassicGitHub, GitLab, Jupyter, most static sites

Choose Textile when your target platform is Redmine, Textpattern, or any system that renders Textile markup. Choose Markdown for GitHub, GitLab, Jupyter, or any CommonMark-compatible renderer.

Supported JSON Input Formats

  • JSON arrays of objects (most common): [{"key": "value"}, ...]

  • JSON arrays of arrays: [["value1", "value2"], ...]

  • Nested JSON objects (flattened to dot-notation keys)

Frequently Asked Questions (FAQ)

  • Does the tool upload my data?

    No. All conversion happens locally in your browser using JavaScript. Your data never leaves your device.

  • What is Textile?

    Textile is a lightweight markup language that converts plain-text shorthand into HTML. It is used by Redmine, Textpattern, Basecamp Classic, and other platforms.

  • Where can I use Textile tables?

    Redmine issue descriptions and wiki pages, Textpattern CMS articles, Basecamp Classic messages, and any platform that renders Textile markup.

  • What does the "Row Header" option do?

    It adds the |_. prefix to the first row of cells, rendering them as <th> header elements in the output HTML. Without this option, all rows render as regular <td> data cells.

  • What does "Table Head Syntax" do?

    It adds |^. markers before the header row and |-. markers before body rows. These create proper <thead> and <tbody> HTML sections for accessibility and semantic structure.

  • What does "Escape Characters" do?

    It escapes Textile special characters (|, ., -, ^) in cell values to prevent them from being interpreted as Textile formatting commands.

  • Can I use this tool for Redmine?

    Yes. The output is compatible with Redmine's Textile renderer. Paste the generated table directly into Redmine issue descriptions, comments, or wiki pages.

  • Is there a file size limit?

    The tool processes data entirely in your browser. Files up to 10 MB typically convert without issues on modern hardware.

  • Can I use this on mobile?

    Yes. The tool is responsive and works on smartphones and tablets.

Featured Tools

Featured tools that you might find useful.

Popular Tools

List of popular tools that users love and frequently use.

New Tools

The latest tools added to our collection, designed for you.

Topics

The tools grouped by topics to quickly find what you need.
Free online Excel to JSON converter. Transform XLSX, XLS, XLSM files into JSON arrays, objects, or keyed formats instantly in your browser — no upload, 100% private.

Excel To JSON

Free online Excel to JSON converter. Transform XLSX, XLS, XLSM files into JSON arrays, objects, or keyed formats instantly in your browser — no upload, 100% private.
Free Excel to CSV converter. Convert XLSX, XLS, XLSM to CSV instantly in your browser. No upload, 100% private. Edit, transpose, deduplicate before exporting.

Excel To CSV

Free Excel to CSV converter. Convert XLSX, XLS, XLSM to CSV instantly in your browser. No upload, 100% private. Edit, transpose, deduplicate before exporting.
Free online Excel to SQL converter. Generate CREATE TABLE and INSERT statements from spreadsheets for MySQL, PostgreSQL, SQLite, and SQL Server. Supports batch insert, primary keys, and type inference.

Excel To SQL

Free online Excel to SQL converter. Generate CREATE TABLE and INSERT statements from spreadsheets for MySQL, PostgreSQL, SQLite, and SQL Server. Supports batch insert, primary keys, and type inference.
Free online Excel to ASCII table converter with 10 border styles (MySQL, Unicode, reStructuredText, and more). Add code comment wrappers in 8 languages. Supports text alignment. Client-side processing.

Excel To ASCII Table

Free online Excel to ASCII table converter with 10 border styles (MySQL, Unicode, reStructuredText, and more). Add code comment wrappers in 8 languages. Supports text alignment. Client-side processing.