Search tools...
Developer Tools

Markdown Guide: Complete Syntax Reference & Online Editor (2026)

Master Markdown syntax for GitHub, blogs, documentation, and note-taking with practical examples.

10 min readUpdated March 15, 2026Developer Tools, Markdown, GitHub, Documentation, Writing

Markdown is a lightweight markup language that lets you format text using simple, readable syntax — no HTML tags, no WYSIWYG editors, no formatting menus. Created by John Gruber in 2004, it has become the de facto standard for writing on the internet: GitHub README files, technical documentation, blog posts, Slack messages, Notion pages, and even this guide are all written in Markdown.

Whether you are a developer writing documentation, a student taking notes, a blogger drafting articles, or a project manager creating wikis — learning Markdown takes 15 minutes and saves you hours. This guide covers every syntax element you need, from basic formatting to advanced tables and diagrams, with practical examples you can try in ToolsArena's free online Markdown editor.

Free Tool

Write & Preview Markdown Instantly

Free online Markdown editor with live preview. No sign-up required.

Open Markdown Editor →

Markdown Basics: Headings, Text Formatting & Lists

Headings

Use # symbols to create headings. More hashes = smaller heading.

MarkdownOutputHTML Equivalent
# Heading 1Largest heading<h1>
## Heading 2Section heading<h2>
### Heading 3Sub-section<h3>
#### Heading 4Minor heading<h4>
##### Heading 5Small heading<h5>
###### Heading 6Smallest heading<h6>

Text Formatting

MarkdownResult
**bold text**bold text
*italic text*italic text
***bold and italic***bold and italic
~~strikethrough~~strikethrough
`inline code`inline code
> blockquoteIndented quote block

Lists

Unordered lists use -, *, or + as bullet markers:

- Item one
- Item two
  - Nested item (indent with 2 spaces)
  - Another nested item
- Item three

Ordered lists use numbers followed by a period:

1. First step
2. Second step
3. Third step
💡 Pro Tip

In Markdown, ordered list numbers do not need to be sequential. You can write 1. 1. 1. for every item and the renderer will auto-number them correctly. This makes reordering items much easier.

Tables, Task Lists & Advanced Syntax

Tables

Markdown tables use pipes | and hyphens -:

| Name    | Role      | City      |
|---------|-----------|-----------|
| Alice   | Developer | Mumbai    |
| Bob     | Designer  | Bangalore |
| Charlie | PM        | Delhi     |

Column alignment is controlled by colons in the separator row:

| Left   | Center  | Right  |
|:-------|:-------:|-------:|
| text   |  text   |   text |
  • :--- = left-aligned (default)
  • :---: = centre-aligned
  • ---: = right-aligned

Task Lists (GitHub-Flavored Markdown)

- [x] Create project repository
- [x] Set up CI/CD pipeline
- [ ] Write unit tests
- [ ] Deploy to production

Renders as interactive checkboxes in GitHub issues and pull requests.

Horizontal Rules

Three or more hyphens, asterisks, or underscores create a horizontal line:

---
***
___

Footnotes

Markdown was created by John Gruber[^1] in 2004.

[^1]: John Gruber is the author of Daring Fireball blog.

Emoji (GitHub-Flavored)

:rocket: :fire: :thumbsup: :warning:
💡 Table Tip

Markdown tables can be tedious to format manually. In ToolsArena's Markdown editor, the live preview shows your table rendered instantly — so you can fix alignment issues in real time without switching between editor and browser.

GitHub-Flavored Markdown (GFM): Features Developers Need

GitHub-Flavored Markdown (GFM) extends standard Markdown with features specifically useful for developers and collaboration:

Auto-linked References

SyntaxLinks To
#123Issue or PR #123 in the same repo
@usernameUser's GitHub profile
org/repo#123Issue #123 in another repo
SHA hashSpecific commit

Alert Blocks (New in GitHub)

> [!NOTE]
> This is a note.

> [!TIP]
> This is a tip.

> [!WARNING]
> This is a warning.

> [!CAUTION]
> This is a caution.

These render as beautifully styled callout boxes in GitHub READMEs and issues.

Mermaid Diagrams

GitHub supports Mermaid diagrams inside fenced code blocks:

```mermaid
graph LR
    A[Start] --> B{Decision}
    B -->|Yes| C[Action 1]
    B -->|No| D[Action 2]
    C --> E[End]
    D --> E
```

This renders as an interactive flowchart diagram — no images or external tools needed.

Math Expressions (LaTeX)

GitHub supports LaTeX math in Markdown:

Inline: $E = mc^2$

Block:
$$
\sum_{i=1}^{n} x_i = x_1 + x_2 + \cdots + x_n
$$
ℹ️ GFM Compatibility

Not all GFM features work on every platform. Task lists and tables are widely supported. Mermaid diagrams and math expressions currently work on GitHub, GitLab, and a few documentation platforms. ToolsArena's Markdown editor supports standard Markdown syntax with live preview.

Common Use Cases & Pro Tips

Best Use Cases for Markdown

  • GitHub README files: Every open-source project needs a well-formatted README. Use headings, badges, installation instructions, and code examples.
  • Technical documentation: Tools like MkDocs, Docusaurus, and GitBook use Markdown files as the source for beautiful documentation sites.
  • Blog posts: Platforms like DEV.to, Hashnode, and Hugo static sites accept Markdown directly. Write once, publish anywhere.
  • Note-taking: Apps like Obsidian, Notion, and Logseq use Markdown as their native format. Your notes remain portable and future-proof.
  • Email drafts: Write in Markdown, convert to rich text. Many email clients and extensions support this workflow.
  • Presentations: Tools like Marp and Slidev let you create slide decks from Markdown files.

Pro Tips for Better Markdown

  • Add a blank line between elements: Paragraphs, lists, and headings need blank lines before and after them to render correctly. This is the #1 cause of formatting issues.
  • Use reference-style links for readability: If you link to the same URL multiple times, use [text][ref] syntax to keep your source clean.
  • Escape special characters with backslash: To display literal *, #, [, ], use \*, \#, \[, \].
  • Use two spaces at the end of a line for a line break: Or use <br> for explicit line breaks within a paragraph.
  • Keep lines under 80–120 characters: This makes Markdown readable as source code and easier to diff in Git.

Markdown Editor Comparison

EditorPlatformPriceBest For
ToolsArenaWeb (browser)FreeQuick editing, no install, live preview
VS CodeDesktopFreeDevelopers, extensions, Git integration
ObsidianDesktop + MobileFree (personal)Note-taking, knowledge management
TyporaDesktop$14.99 one-timeDistraction-free WYSIWYG writing
StackEditWebFreeGoogle Drive integration
HackMDWebFreemiumCollaborative editing, teams
💡 Try It Now

Open ToolsArena's Markdown editor, paste your text on the left, and see the formatted output on the right in real time. It is the fastest way to learn Markdown — experiment with syntax and instantly see the result.

How to Use the Tool (Step by Step)

  1. 1

    Open the Markdown editor

    Go to ToolsArena's free online Markdown editor. No sign-up or installation required.

  2. 2

    Write or paste your Markdown

    Type Markdown syntax in the left panel — headings with #, bold with **, lists with -, etc.

  3. 3

    Preview the formatted output

    The right panel shows a live preview of how your Markdown will render as formatted text.

  4. 4

    Copy or export

    Copy the rendered HTML or your Markdown source for use in GitHub, blogs, documentation, or anywhere else.

Frequently Asked Questions

What is Markdown used for?+

Markdown is used for writing formatted text with simple syntax. Common uses include GitHub README files, technical documentation, blog posts, note-taking (Obsidian, Notion), wikis, and email drafts. It converts to HTML, PDF, and many other formats.

How do I create a table in Markdown?+

Use pipes (|) and hyphens (-) to create tables. Example: | Header 1 | Header 2 | followed by |----------|----------| and then | Cell 1 | Cell 2 |. Use colons for alignment: :--- (left), :---: (center), ---: (right).

What is the difference between Markdown and HTML?+

Markdown is a simplified syntax that converts to HTML. For example, **bold** becomes <strong>bold</strong>. Markdown is easier to read and write than raw HTML but supports fewer features. Most Markdown renderers also allow inline HTML for advanced formatting.

Does Markdown support syntax highlighting?+

Yes. Use fenced code blocks with a language identifier: ```javascript followed by your code and closing ```. Most renderers support hundreds of languages including JavaScript, Python, Java, Go, Rust, SQL, and more.

Can I use Markdown for a blog?+

Yes. Many blogging platforms accept Markdown directly: DEV.to, Hashnode, Medium (with conversion), Ghost, and static site generators like Hugo, Jekyll, and Next.js. Write in Markdown once and publish across multiple platforms.

Free — No Signup Required

Write & Preview Markdown Instantly

Free online Markdown editor with live preview. No sign-up required.

Open Markdown Editor →

Related Guides