Markdown Syntax Fundamentals
Core markdown syntax for creating well-structured documents.
Headings
Heading 1
Heading 2
Heading 3
Heading 4
Heading 5
Heading 6
Heading Best Practices
-
Use a single H1 (# ) per document as the title
-
Don't skip heading levels (H2 to H4)
-
Keep headings concise and descriptive
-
Use sentence case or title case consistently
Text Formatting
Emphasis
italic or italic
bold or bold
bold italic or bold italic
strikethrough
Inline Code
Use backticks for inline code like const x = 1
Lists
Unordered Lists
- Item one
- Item two
- Nested item
- Another nested item
- Item three
- Alternative marker
- Also works
Ordered Lists
- First item
- Second item
- Nested numbered
- Another nested
- Third item
Task Lists (GitHub Flavored)
- Completed task
- Incomplete task
- Another task
Links
Basic Links
Reference Links
Automatic Links
<https://example.com> <email@example.com>
Internal Links (Anchors)
Anchor IDs are auto-generated from headings:
-
Lowercase
-
Spaces become hyphens
-
Special characters removed
Images
Basic Images

Reference Images

Linked Images
Code Blocks
Fenced Code Blocks
function hello() {
console.log("Hello, World!");
}
Common Language Identifiers
-
javascript / js
-
typescript / ts
-
python / py
-
bash / shell / sh
-
json / yaml
-
html / css
-
sql
-
markdown / md
Indented Code Blocks
// Four spaces or one tab
function example() {
return true;
}
Blockquotes
Basic Blockquotes
This is a blockquote. It can span multiple lines.
Blockquotes can contain
Multiple paragraphs.
Nested Blockquotes
Outer quote
Nested quote
Deeply nested
Blockquotes with Other Elements
Heading in blockquote
- List item
- Another item
code block
Horizontal Rules
Use three or more hyphens, asterisks, or underscores.
Escaping Characters
* Not italic * # Not a heading [Not a link] `Not code`
Characters that can be escaped:
`
*
_
{
}
[
]
(
)
. ! |
Line Breaks
Line one with two trailing spaces Line two (hard break)
Line one
Line two (paragraph break)
Best Practices
-
Consistent formatting: Pick a style and stick to it
-
Blank lines: Add blank lines before and after:
-
Headings
-
Code blocks
-
Lists
-
Blockquotes
-
Line length: Consider wrapping at 80-120 characters for readability
-
Alt text: Always provide meaningful alt text for images
-
Link text: Use descriptive link text, not "click here"
-
Code highlighting: Always specify language for fenced code blocks