Data tables

NoteThink renders plain GitHub-flavoured Markdown tables: a header row, an alignment row, and as many body rows as you like. The renderer adds striped alternating rows for readability and falls back to a horizontal scrollbar when a table is too wide for the column. Everything on this page is ordinary Markdown - there is no spreadsheet engine, no sorting, and no CSV import behind it. This page collects a few realistic reference tables so you can see the rendering in context.

Feature comparison

The most common use for a table is a comparison matrix. The first column is left-aligned (the default) so the feature names line up against the left edge, while the tool columns are centre-aligned (:---:) so the ✓ and ✗ marks sit tidily under each heading. Cells can hold short values, inline code, or status marks.

FeatureNoteGitNotionObsidianPlain GitHub
Stores notes in Git✓✗✓✓
Edits in the browser✓✓✗✓
Offline-first desktop✗✗✓✗
Kanban view of Markdown✓✓✓✗
Renders GFM tables✓✓✓✓
Self-hostable✓✗✓✓
Owns your raw .md✓✗✓✓
Real-time co-editing✗✓✗✗
Inline diff / blame✓✗✗✓
Free for personal use✓✓✓✓

A blank cell is perfectly valid GFM and simply renders empty, so you never have to invent a placeholder for a feature that does not apply.

Pricing tiers

Numbers read most naturally when they are right-aligned, so their digits line up by place value. Here the plan name stays left-aligned while every numeric column uses ---: to push the values to the right edge of the cell.

PlanSeats includedPrivate reposStorage (GB)Price / month (USD)
Free1310
Personal125106
Team1025010049
Business502,5001,000199
Enterprise50025,00010,0001,499

Notice that 2,500 and 25,000 keep their thousands separators and still align cleanly on the right - alignment is purely visual, so the renderer treats every cell as plain text.

Status-tag cheat-sheet

This compact reference deliberately mixes all three alignments in a single table to show them side by side: the tag column is left-aligned, the priority column is centre-aligned, and the typical age column is right-aligned. Use it as a quick legend for the status markers used elsewhere in these notes.

TagPriorityTypical age (days)Meaning
#triagehigh1Newly filed, not yet assessed
#in-progressmid4Actively being worked on right now
#blockedhigh12Waiting on an external dependency
#reviewmid2Awaiting a second pair of eyes
~~#done~~low0Finished - struck through once archived

The ~~#done~~ row shows strikethrough working inside a cell, which is handy for marking a tag as retired without deleting the row outright.

Wide tables and scrolling

When a table has more columns than the page can show, NoteThink does not squash the text - it keeps each column readable and lets the table scroll sideways. The table below is intentionally wide to demonstrate that behaviour, and the final column uses checkboxes to show task state.

File formatExtensionReadWriteRenders inlineSyntax highlightNotesVerified
Markdown.md✓✓✓✓The native NoteThink format[x]
Plain text.txt✓✓✓✗Shown verbatim, no parsing[x]
JSON.json✓✓✗✓Highlighted, opened in editor[x]
CSV.csv✓✓✗✗Edited as text, not as a grid[ ]
Image.png✓✗✓✗Previewed in the editor pane[x]

For the deeper view-switching reference, see the keyboard shortcuts page, which lists the ?nt_view= query strings that change how a note is displayed.

Demonstrates NoteThink's GitHub-flavoured table rendering - column alignment, striped rows, and horizontal scroll for wide data, all from plain Markdown tables.