Markdown Formatter
Overview
Transforms unstructured content into clean, well-organized Markdown with proper headings, lists, code blocks, and formatting.
Instructions
When formatting content to Markdown:
-
Analyze the content to identify structure (headings, lists, code, etc.)
-
Apply hierarchy using appropriate heading levels (H1 for title, H2 for sections)
-
Format code with proper language-specific syntax highlighting
-
Create lists for related items (bullet for unordered, numbers for sequential)
-
Add tables for structured data comparisons
Formatting Rules
Headings
-
H1 (# ) - Document title only
-
H2 (## ) - Major sections
-
H3 (### ) - Subsections
-
H4+ - Avoid unless necessary
Code Blocks
-
Inline code: Single backticks for short references
-
Fenced blocks: Triple backticks with language identifier
Lists
-
Bullet lists: Related but unordered items
-
Numbered lists: Sequential steps or ranked items
-
Nested lists: Maximum 2 levels deep
Examples
Example: Format API Documentation
Input: "Document the getUser function that takes userId string and returns User object with name email and createdAt fields"
Output:
getUser(userId)
Retrieves a user by their unique identifier.
Parameters
| Name | Type | Description |
|---|---|---|
userId | string | The unique user identifier |
Returns
User object with the following properties:
name- User's display nameemail- User's email addresscreatedAt- Account creation timestamp
Guidelines
Do
-
Keep line length under 100 characters
-
Use blank lines to separate sections
-
Prefer ATX-style headings (# ) over Setext
-
Use reference-style links for repeated URLs
-
Include language identifier in fenced code blocks
Don't
-
Use more than 3 heading levels unless necessary
-
Mix heading styles in same document
-
Create deeply nested lists (max 2 levels)
-
Use HTML tags when Markdown suffices