Summary #
Markdown has all the features that we need for formatting regular web pages and blog posts.
Markdown supports block elements like headings, various types of lists, and sublists.
We can provide inline images, links, basic formatting, and code blocks to Markdown-based content using text-based constructs.
GitHub Flavored Markdown (GFM) is supported by Hugo, which adds task lists and tables to Markdown.
Hugo’s rendering engine also supports features like emoticons, automatic fractions, and definition lists.
Hugo supports multiple languages for content, including AsciiDoc for long-form content, pandoc for extended
Markdown, and reStructuredText for documentation.
Apart from data, a web page also needs metadata supplied in Hugo using YAML, TOML, and JSON.
YAML is easy to read and provides a mechanism to deliver structured data to Hugo.
While Hugo has sensible defaults, and we can build websites without writing a single metadata item, Hugo provides the ability to override most metadata items like the title, description, date, and theme-specific parameters.
Most of the Markdown features are native to Hugo and can be used across all themes.
With the approach of managing content as files instead of as databases and the readability of Markdown, we get sensible diff views and versioning support for content using a code versioning software like Git.