GFM Feature Test Post
Heading 1
Heading 2
Heading 3
Heading 4
Heading 5
Heading 6
Inline Formatting
This is bold, this is italic, and this is bold italic. You can also use underscores for emphasis. Here’s some strikethrough text. Inline code looks like this.
Links & Images
Visit Astro — an external link.
Here’s an auto-linked URL: https://example.com
And here’s a randomly generated placeholder image:
MDX Extras
You can mix JSX and Markdown in the same file. That means components, props, and inline expressions work.
2026-02-12T00:00:00.000ZInline JSX: This is a custom callout box rendered with JSX.
Blockquotes
This is a blockquote.
Blockquotes can be nested.
— Someone, probably
Ordered List
- First item
- Second item
- Nested item A
- Nested item B
- Third item
Unordered List
- Apples
- Oranges
- Blood orange
- Navel orange
- Bananas
Task List (GFM)
- Set up Astro project
- Create first blog post
- Add styling
- Deploy to production
- ???
- Profit
Table (GFM)
| Feature | Supported | Notes |
|---|---|---|
| Tables | ✅ | Left/center/right |
| Task lists | ✅ | Checkboxes work! |
| Strikethrough | ✅ | |
| Autolinks | ✅ | Just paste a URL |
| Footnotes | ✅ | See below1 |
Footnotes (GFM)
Here’s a sentence with a footnote.1
Code Blocks
Inline: console.log("hello")
Fenced with syntax highlighting:
function greet(name) {
return `Hello, ${name}!`;
}
console.log(greet('world'));
def greet(name: str) -> str:
return f"Hello, {name}!"
print(greet("world"))
A plain fenced block:
No language specified here.
Just plain preformatted text.
HTML in Markdown
Click to expand
This content is hidden by default. Markdown still works inside HTML blocks (in most renderers).
Horizontal Rules
Three different syntaxes:
Escaping
Use backslashes to show literal characters: *not italic*, `not code`, # not a heading.
Emoji (GFM shortcodes)
If your renderer supports it: :rocket: :tada: :white_check_mark: