Generated by DeepSeek V3.2| Markdown | |
|---|---|
| Name | Markdown |
| File ext | .md, .markdown |
| Mime | text/markdown |
| Released | 2004 |
| Genre | Lightweight markup language |
| Creator | John Gruber |
| Influenced by | HTML, Setext, atx, Textile |
| Influenced | CommonMark, GitHub Flavored Markdown, MultiMarkdown |
Markdown. Markdown is a lightweight markup language created by John Gruber in collaboration with Aaron Swartz in 2004. Its primary design goal is to be easy to read and write in its source form, while being convertible to structurally valid HTML and other formats. The language is widely used for formatting readme files, online forum messages, and creating rich text using a plain text editor.
The language was conceived by John Gruber, a prominent writer and software developer, who announced its initial release on his blog, Daring Fireball. The original syntax was heavily influenced by existing conventions for plain text email and was shaped by earlier markup systems like Setext, atx, and Textile. A significant contribution to its early philosophy and implementation came from internet activist and programmer Aaron Swartz. For many years, the original Perl script was the sole reference implementation, leading to various interpretations. This ambiguity eventually spurred the creation of standardized efforts like CommonMark, spearheaded by John MacFarlane and supported by companies including Google and GitHub. The evolution of the language has been closely tied to the platforms that adopted it, most notably the software development platform GitHub with its GitHub Flavored Markdown variant.
The core syntax is designed to be intuitive, using punctuation characters already common in plain text. Headings are created using hash symbols, inspired by the atx style, while emphasis is added with asterisks or underscores. Block-level elements include code blocks, which can be fenced for syntax highlighting as popularized by GitHub Flavored Markdown, and blockquotes using the greater-than symbol. Lists, both ordered and unordered, are created using numbers or hyphens. Inline links and images use a reference-style syntax that can be reminiscent of footnotes. Horizontal rules can be made with hyphens or asterisks, and inline code is denoted with backticks. The language also supports raw HTML for cases where specific formatting is needed, ensuring it remains a superset of HTML.
Due to its informal specification, numerous flavors and extended implementations have emerged. GitHub Flavored Markdown added features like tables, task lists, and automatic linking for URLs and SHA-1 hashes, becoming a de facto standard in software documentation. CommonMark is a highly influential, standardized specification aimed at resolving ambiguities in the original design. Other notable variants include MultiMarkdown, which adds support for tables, footnotes, and citations, and Pandoc, a universal document converter that uses its own extended syntax. Discord, Reddit, and Stack Exchange each employ customized versions for their platform-specific formatting needs. These extensions often incorporate elements from other lightweight markup languages or add capabilities for mathematical notation, diagrams, and metadata.
Its primary application is in documentation, especially for software projects on platforms like GitHub, GitLab, and Bitbucket. It is the standard format for README files and wikis within these systems. Many static site generators, such as Jekyll (used by GitHub Pages), Hugo, and Gatsby, use it as their core content format. Blogging platforms including WordPress and Ghost support it for post composition. It is extensively used in technical writing, for creating slideshows with tools like Remark and Marp, and for writing books and academic papers, often processed through Pandoc. The format is also integral to modern note-taking applications like Obsidian, Notion, and Bear.
Compared to complex markup languages like HTML or LaTeX, it offers vastly simplified syntax intended for human readability without a tag-based structure. Unlike Rich Text Format (RTF) or proprietary formats from Microsoft Word, it is plain text and thus works seamlessly with version control systems like Git. When compared to other lightweight markup languages, it is often seen as less feature-rich than reStructuredText but more widely adopted and accessible than AsciiDoc. Its syntax is generally considered more intuitive than Textile and less verbose than BBCode. However, for complex document types requiring precise formatting, cross-references, or bibliographies, LaTeX or DocBook remain more powerful, though often at the cost of simplicity.
Category:Markup languages Category:Document file formats Category:2004 software