Greetings, brave adventurer! Welcome to Markdown Mastery โ the quest that teaches you the universal language of technical documentation. Markdown is used everywhere: README files, blog posts, wikis, chat messages, and even this very quest youโre reading. Once you master it, youโll be able to create beautifully formatted content with nothing but plain text.
Open any .md file and press Cmd+Shift+V (macOS) or Ctrl+Shift+V (Windows/Linux) to see the rendered preview side-by-side.
Every great document starts with well-organized text. Headings, emphasis, and lists form the skeleton of all Markdown content.
# Heading 1 (Page Title)
## Heading 2 (Major Section)
### Heading 3 (Subsection)
#### Heading 4 (Detail)
##### Heading 5 (Minor Detail)
###### Heading 6 (Smallest)
Rule of thumb: Use headings in order โ never skip levels (e.g., donโt jump from # to ###).
**bold text**
*italic text*
***bold and italic***
~~strikethrough~~
`inline code`
Renders as:
inline codeUnordered (bullet) lists:
- Item one
- Item two
- Nested item
- Another nested item
- Item three
Ordered (numbered) lists:
1. First step
2. Second step
3. Third step
1. Sub-step a
2. Sub-step b
Task lists (checkboxes):
- [ ] Incomplete task
- [x] Completed task
- [ ] Another task
practice.mdNow youโll learn to link to external resources, embed images, and format code โ the elements that make documentation truly useful.
<!-- Inline link -->
[GitHub](https://github.com)
<!-- Link with title (shows on hover) -->
[GitHub](https://github.com "Visit GitHub")
<!-- Reference-style link -->
[GitHub][gh-link]
[gh-link]: https://github.com
<!-- Auto-linked URL -->
<https://github.com>
<!-- Inline image -->

<!-- Image with title -->

<!-- External image -->

Inline code โ wrap with single backticks:
Use the `git commit` command to save changes.
Fenced code blocks โ wrap with triple backticks and specify the language:
```python
def hello():
print("Hello, World!")
```
```bash
echo "Hello from the terminal"
```
```javascript
console.log("Hello, JavaScript!");
```
The language identifier enables syntax highlighting โ always include it!
> This is a blockquote.
> It can span multiple lines.
>
> > Nested blockquotes work too.
This is a blockquote. It can span multiple lines.
With the basics mastered, youโre ready for the advanced formatting that makes documentation professional and scannable.
| Feature | Markdown | HTML |
|------------|--------------|--------------|
| Bold | `**text**` | `<b>text</b>`|
| Italic | `*text*` | `<i>text</i>`|
| Code | `` `code` `` | `<code>` |
Renders as:
| Feature | Markdown | HTML |
|---|---|---|
| Bold | **text** |
<b>text</b> |
| Italic | *text* |
<i>text</i> |
| Code | `code` |
<code> |
Column alignment:
| Left-aligned | Center-aligned | Right-aligned |
|:-------------|:--------------:|--------------:|
| Left | Center | Right |
---
***
___
All three produce a horizontal line โ use --- for consistency.
To show Markdown symbols literally, use a backslash:
\*not italic\*
\# not a heading
\[not a link\]
Here is a statement that needs a source[^1].
[^1]: This is the footnote with the reference.
When Markdown isnโt enough, you can use raw HTML:
<details>
<summary>Click to expand</summary>
Hidden content goes here. Supports **Markdown** inside!
</details>
<details> sectionprofile.md with your name as H1README.md for a real or imaginary projectpractice.md with all basic formatting