Zero experience required

Markdown for Complete Beginners

Format text with plain characters — no toolbar buttons, no locked-in files. The language behind GitHub READMEs, Obsidian notes, and this guide.

The Big Picture

Before learning syntax, understand what problem Markdown actually solves.

Sound familiar?

You save Report.docx, then Report_v2.docx, then Report_FINAL.docx. Copy formatted text into an email and the layout breaks. Click Bold, click Heading, hunt for toolbar buttons — and the file only works in that one app.

Markdown lets you format text using plain characters you type directly.
Write # Heading instead of clicking "Heading 1." Write **bold** instead of selecting text and clicking Bold.
  • Plain text — open any .md file in any editor and read it immediately
  • Portable — formatting travels with the file, not locked in one app
  • Fast — your hands never leave the keyboard
  • Universal — GitHub, Obsidian, Slack, Discord, and hundreds more
  • Forgiving — small mistakes usually still render fine

The Typewriter Analogy

A blank sheet of paperA .md text file
ALL CAPS for a title# Heading
Underlining for emphasis**bold** or *italic*
Indenting a bullet list- item
Writing "see page 42"[link text](url)
A sticky note in the margin> blockquote

Key Terms

Plain English definitions — no dictionary required.

Markdown

A lightweight markup language — add simple characters to plain text to describe formatting.

.md file

A text file with the .md extension. Same as .txt but signals Markdown formatting.

Syntax

The specific characters Markdown recognizes — # for headings, ** for bold.

Render / Preview

Converting raw Markdown into formatted output — big headings, clickable links, bold text.

Flavor / Variant

Different apps extend Markdown slightly. GitHub adds tables; Obsidian adds wikilinks.

Fenced code block

Multi-line code surrounded by triple backticks ``` — the standard way to include code.

What Is a .md File?

Nothing magic — just a text file with a special extension.

A Markdown file is just a text file. Create one in any editor, save with .md, open in a Markdown-aware app for live preview.

What you type
# My Project
 
This is **bold** and *italic*.
 
- Easy to learn
- Works everywhere
What it renders as

My Project

This is bold and italic.

  • Easy to learn
  • Works everywhere
The raw file always stays readable. Even if preview breaks, you can still read the content.

Headings & Paragraphs

Structure your document like chapter titles and section headers.

Headings
# Heading 1 — largest (document title)
## Heading 2 — major sections
### Heading 3 — subsections
#### Heading 4

Separate paragraphs with a blank line:

This is the first paragraph.

This is the second paragraph.
Put a space after the # symbols. #Heading may not work in all apps. Always write # Heading.

Bold, Italic & More

What you type

**bold**
*italic*
***bold and italic***
~~strikethrough~~

What you get

bold
italic
bold and italic
strikethrough
Pick one style and stick with it. Most people use asterisks (**bold**, *italic*) rather than underscores.

Lists

Bullet & numbered lists
# Unordered (bullets)
- First item
- Second item
  - Nested item (indent 2 spaces)

# Ordered (numbers)
1. First step
2. Second step
3. Third step

Images

Image syntax
# Basic image
![alt text describing the image](https://example.com/image.png)

# Image that is also a link
[![Click this image](thumbnail.png)](https://example.com)

Alt text describes the image for screen readers and when the image fails to load. Always include it.

Code & Code Blocks

Inline & fenced code
# Inline code (within a sentence)
Use the `git status` command to see what changed.

# Fenced code block (multi-line)
```bash
git clone https://github.com/user/repo.git
cd repo
git status
```

# Add language name for syntax highlighting
```python
def greet(name):
    print(f"Hello, {name}!")
```

Blockquotes & Callouts

Blockquotes
> This is a quoted passage.
> It can span multiple lines.
>
> — Attribution optional

Obsidian callouts (Obsidian only)

Callout boxes
> [!NOTE]
> Useful information the reader should know.

> [!TIP]
> Helpful advice.

> [!WARNING]
> Something to watch out for.

Tables

Part of GitHub Flavored Markdown — works in GitHub, Obsidian, and most modern editors.

Table syntax
| Column A | Column B | Column C |
|----------|----------|----------|
| Row 1    | Data     | More     |
| Row 2    | Data     | More     |

# Alignment: :--- left, :---: center, ---: right
| Left     | Center   | Right    |
|:---------|:--------:|---------:|
| aligned  | aligned  | aligned  |

Task Lists

Checkboxes
- [ ] Unchecked task
- [x] Completed task
- [ ] Another thing to do
The space inside brackets matters: [ ] not [].

Where You'll Use Markdown

🐙
GitHub

READMEs, issues, PRs

💎
Obsidian

Every note in your vault

⌨️
Cursor / VS Code

Docs & project notes

💬
Slack / Discord

Quick message formatting

📝
Static sites

Blogs via Eleventy, Hugo

📖
This guide

You're reading MD now

Continue learning: GitHub guide (where .md files live in repos) · Obsidian guide (Markdown-powered linked notes)

GitHub vs. Obsidian

Not all Markdown is identical — here's what differs.

FeatureStandard MDGitHub (GFM)Obsidian
Headings, bold, listsYesYesYes
TablesSometimesYesYes
Task lists - [ ]NoYesYes
Strikethrough ~~NoYesYes
Wikilinks [[note]]NoNoYes
Callouts > [!NOTE]NoNoYes
Rule of thumb: Stick to standard syntax and your files work everywhere. Add Obsidian-specific features only in Obsidian vaults.

Common Mistakes

MistakeWhat happensFix
No space after #Heading doesn't renderWrite # Heading
Missing blank line before listList merges into paragraphAdd blank line before - item
Unclosed ** or backtickFormatting runs to end of fileCount opening and closing markers
Broken link syntaxRaw text shows instead of linkCheck: [text](url)
Pasting from WordHidden formatting garbagePaste as plain text, re-add MD
Huge tablesPainful to edit by handLink to a spreadsheet instead

Markdown vs. Other Formats

FormatWhat it isWhen to use it
Markdown (.md)Plain text with formatting charactersNotes, docs, READMEs, Git/Obsidian
Word (.docx)Proprietary rich documentFormal reports, track changes
Google DocsCloud word processorReal-time collaboration on prose
HTML (.html)Web page markupPublished websites, precise layout
PDFFixed-layout final outputSharing finished, uneditable docs

Cheat Sheet

Essential syntax
# Heading 1
## Heading 2
### Heading 3

Regular paragraph. Blank line between paragraphs.

**bold**  *italic*  ~~strikethrough~~  `inline code`

- Bullet item
  - Nested bullet
1. Numbered item

- [ ] Task unchecked
- [x] Task done

[Link text](https://url.com)
![Alt text](image.png)

> Blockquote

| Col 1 | Col 2 |
|-------|-------|
| data  | data  |

---
Horizontal rule

Glossary

TermDefinition
MarkdownPlain-text formatting syntax using #, *, -, etc.
.md fileA text file containing Markdown content
RenderConvert raw Markdown into formatted visual output
GFMGitHub Flavored Markdown — adds tables, task lists, strikethrough
WikilinkObsidian-style link: [[Note Title]]
Fenced code blockMulti-line code surrounded by triple backticks
BlockquoteQuoted text starting with >
Alt textImage description for accessibility
FlavorAn app's specific extensions to standard Markdown
CommonMarkA standardized specification of core Markdown syntax