A formal extension of the CommonMark specification created by GitHub, standardizing tables, task checkboxes, strikethrough, and autolinks.
GitHub Flavored Markdown (GFM) is GitHub’s formal extension to the CommonMark specification. Since its introduction, GFM has become the de facto standard dialect for developers, technical writers, and open-source project documentation worldwide.
While CommonMark standardized core typographic elements (headings, blockquotes, code blocks, lists, and links), it intentionally omitted more complex tabular data and workflow features. In 2017, GitHub formalized GFM as an explicit specification layered atop CommonMark 0.28, documenting precise parsing rules for tables, task lists, strikethrough, and autolinks.
The core GFM extensions
GFM introduces four essential extensions that transformed Markdown into a full-featured writing environment:
1. Pipe tables
GFM standardizes tabular layout using pipes (|) and hyphens (-), with colon indicators (:) defining column alignment:
| Feature | Local Engine | Network Status |
| :--- | :---: | ---: |
| Whisper ASR | Active | Offline |
| SQLite FTS5 | Active | Offline |
| ScreenCaptureKit | System | Offline |
2. Task list checkboxes
GFM provides interactive task lists using bracket syntax inside list items:
- [ ] Unchecked item- [x] Checked item
In Oyma, clicking a task checkbox in live preview toggles the raw bracket character on disk instantly without moving your cursor.
3. Typographic strikethrough
GFM wraps text in double tildes (~~strikethrough~~) to denote deprecated requirements or closed tasks, compiling directly to semantic HTML <del> tags.
4. Extended autolinking
GFM automatically converts bare URLs (e.g., https://example.com) and email addresses into clickable hyperlinks without requiring surrounding angle brackets.
GFM in Oyma on macOS
Oyma renders GFM natively. In Oyma‘s live-preview interface, GFM tables render as fluid, spreadsheet-like interactive grids where you can navigate cells with Tab, sort columns, and paste directly from Numbers or Excel—all while preserving raw GFM pipes on your Mac’s disk.
Abstract syntax tree (AST) compilation
In the modern web and compiler pipeline (such as unified, remark-gfm, or cmark-gfm), GFM syntax maps into distinct abstract syntax tree node types:
- Tables compile into `table`, `tableRow`, and `tableCell` nodes with explicit column alignment properties (`left`, `right`, `center`).
- Task list items compile into `listItem` nodes with a boolean `checked: true | false` property.
- Strikethrough compiles into a `delete` node.
This structured AST representation allows static site generators, export tools, and documentation indexers to transform documents cleanly into HTML, PDF, or DOCX formats without losing semantic intent.
Interoperability across modern development tools
Because GFM is the native dialect of GitHub, GitLab, and developer tools:
- Notes authored in Oyma can be committed directly to Git repositories.
- Code review pull requests render Markdown documentation with full fidelity.
- Technical specifications shared with team members render identically whether opened in Oyma, VS Code, Obsidian, or a GitHub pull request in Safari.
Frequently asked questions about GitHub Flavored Markdown (GFM)
What extensions does GFM add on top of CommonMark?
GFM adds four formal syntactic extensions: tables (pipe syntax), task list items (interactive checkboxes), strikethrough (~~delimiters~~), and literal autolinks.
Is GFM fully backwards compatible with CommonMark?
Yes. GFM is a strict superset of CommonMark. Any document that parses cleanly under CommonMark will parse identically under GFM.
Does Oyma support GitHub Flavored Markdown?
Yes. Oyma provides full native support for GFM tables, task list toggles, autolinks, and strikethrough typography in its live-preview macOS editor.
Master github flavored markdown (gfm) with private Mac notes.
Store your thoughts in standard Markdown, transcribe calls on-device, and retain 100% data sovereignty.