Tables with Alignment
Column alignment is controlled by the colon position in the separator row:
| Left aligned | Centred | Right aligned |
|:-------------|:--------:|--------------:|
| Item 1 | Status | ₹500 |
| Item 2 | Pending | ₹1,200 |:--- = left, :---: = centre, ---: = right. On GitHub, tables support inline Markdown (bold, code, links) inside cells.
Collapsible Sections with <details>
Long code blocks, changelogs, or optional reading can be hidden in a disclosure widget using standard HTML inside Markdown:
<details>
<summary><strong>Click to see the full API response example</strong></summary>
```json
{
"id": "user_42",
"name": "Alice Chen",
"email": "alice@example.com"
}
```
</details>The blank line after <summary> is required for Markdown inside the details block to render correctly on GitHub.
GitHub Badges in READMEs
Shields.io generates dynamic SVG badges that show build status, version, license, and other live metadata:



These render as inline images. All data is fetched from live APIs at render time — the badge always reflects the current state.
Task Lists in Issues and PRs
GitHub and GitLab render interactive checkboxes from Markdown task lists. In issues, they're actually clickable:
## Release Checklist
- [x] Unit tests passing
- [x] Integration tests passing
- [ ] Documentation updated
- [ ] CHANGELOG.md entry added
- [ ] Version bumped in package.jsonFootnotes (GitHub Flavoured Markdown)
The algorithm runs in O(n log n) time.[^1]
[^1]: This assumes the input is unsorted.
For pre-sorted data, O(n) is achievable.Footnotes render as superscript numbers in the text and collect at the bottom of the document. Useful for technical caveats, references, or legal disclaimers without cluttering the main text.
Keyboard Shortcut Styling
The HTML <kbd> element renders with key-cap styling in most platforms:
Press <kbd>Ctrl</kbd> + <kbd>K</kbd> to open the command palette.
Use <kbd>⌘</kbd> + <kbd>Shift</kbd> + <kbd>P</kbd> on macOS.Syntax-Highlighted Code Blocks
Always add a language identifier after the opening triple backtick. Supported on GitHub, GitLab, VS Code, and most Markdown renderers:
```typescript
const greet = (name: string): string => `Hello, ${name}!`;
```
```sql
SELECT u.name, COUNT(o.id) AS order_count
FROM users u
LEFT JOIN orders o ON u.id = o.user_id
GROUP BY u.id
HAVING order_count > 5;
```
```bash
npm install && npm run build && npm test
```Linking to Specific Lines in GitHub
When reviewing code, link directly to specific lines in a file by appending #L42 or a range #L42-L55 to the file's GitHub URL. In Markdown issues or PR descriptions:
The bug is on [line 42 of auth.ts](https://github.com/owner/repo/blob/main/src/auth.ts#L42).
See the related logic at [lines 88–103](https://github.com/owner/repo/blob/main/src/auth.ts#L88-L103).Definition Lists (MultiMarkdown)
Supported in many Markdown processors (Pandoc, kramdown) and useful for glossaries:
CAGR
: Compound Annual Growth Rate — the rate at which an investment
grows from start to end value assuming annual compounding.
SIP
: Systematic Investment Plan — regular fixed-amount investments
at periodic intervals regardless of market price.- Project name + one-line description — first thing anyone sees
- Badges row — build, version, coverage, license
- Quick start — 3 commands to run the project from scratch
- Features table — what it does, with links to deeper docs
- Configuration reference — env vars, config file options
- Contributing guide link — or inline for small projects
- License — always last