---
theme: default
author: Learn Markdown
---
# Markdown Basics
A quick reference for Markdown syntax
---
## Headings
Markdown supports multiple heading styles:
```markdown
# This is an h1
## This is an h2
### This is an h3
#### This is an h4
##### This is an h5
###### This is an h6
```
Alternative syntax for h1 and h2:
```markdown
This is an h1
=============
This is an h2
-------------
```
---
## Text Formatting
**Bold text:**
```markdown
**This text is in bold.**
__And so is this text.__
```
*Italic text:*
```markdown
*This text is in italics.*
_And so is this text._
```
Combined:
```markdown
***This text is in both.***
**_As is this!_**
*__And this!__*
```
Strikethrough:
```markdown
~~This text is rendered with strikethrough.~~
```
---
## Paragraphs
Paragraphs are separated by blank lines:
```markdown
This is a paragraph. I'm typing in a paragraph.
Now I'm in paragraph 2.
I'm still in paragraph 2 too!
I'm in paragraph three!
```
Line breaks require two spaces at the end or `
`:
```markdown
I end with two spaces (highlight to see them).
There's a
above me!
```
---
## Block Quotes
Use `>` to create block quotes:
```markdown
> This is a block quote. You can either
> manually wrap your lines and put a `>`
> before every line or you can let your
> lines get really long and wrap on their own.
```
Nested quotes:
```markdown
> You can also use more than one level
>> of indentation?
> How neat is that?
```
---
## Lists
**Unordered lists** use `*`, `+`, or `-`:
```markdown
* Item
* Item
* Another item
- Item
- Item
- One last item
```
**Ordered lists** use numbers:
```markdown
1. Item one
2. Item two
3. Item three
```
Nested lists:
```markdown
1. Item one
2. Item two
3. Item three
* Sub-item
* Sub-item
4. Item four
```
---
## Task Lists
Create checkboxes with `[ ]` and `[x]`:
```markdown
- [ ] First task to complete
- [ ] Second task that needs done
- [x] This task has been completed
```
> [!NOTE]
> Task lists are a GitHub-flavored Markdown extension
---
## Code
**Inline code** uses backticks:
```markdown
John didn't even know what the `go_to()` function did!
```
**Code blocks** use triple backticks or indentation:
````markdown
```rust
fn main() {
println!("Hello, world!");
}
```
This is code
So is this
````
---
## Horizontal Rules
Create horizontal rules with three or more:
```markdown
***
---
- - -
****************
```
All render as:
***
___
- - -
---
## Links
**Inline links:**
```markdown
[Click me!](http://test.com/)
[Click me!](http://test.com/ "Link to Test.com")
[Go to music](/music/)
```
**Reference links:**
```markdown
[Click this link][link1] for more info!
[Also check out this link][foobar] if you want.
[link1]: http://test.com/ "Cool!"
[foobar]: http://foobar.biz/ "Alright!"
```
**Implicit reference:**
```markdown
[This][] is a link.
[This]: http://thisisalink.com/
```
---
## Internal Links
Link to headings using slugified IDs:
```markdown
- [Heading](#heading)
- [Another heading](#another-heading)
- [Chapter](#chapter)
- [Subchapter