GitHub Pages is a service that turns Markdown files into a website and hosts them for free on the internet. If you know how to use GitHub and you need to create a simple webpage, you can’t do better than GitHub Pages. Just create a new repository on GitHub, commit the Markdown files, and enable the GitHub Pages feature.
GitHub Pages uses the Jekyll static site generator to create your website, and the Markdown support is excellent. You can pick one of GitHub’s pre-made themes for your website, use a Jekyll theme, or use your own custom CSS. Shown below is a sample webpage using one of GitHub’s pre-made themes.
Confusingly, GitHub Pages renders Markdown differently than GitHub does. GitHub uses its own Markdown processor; GitHub Pages uses kramdown. This means your README.md
file will look different on GitHub’s website than on your GitHub Pages website. For example, emoji are rendered on GitHub’s website, but not on websites generated using GitHub Pages.
GitHub Pages provides support for the following Markdown elements. GitHub Pages uses Jekyll, which uses the kramdown Markdown processor.
Element | Support | Notes |
---|---|---|
Headings | Yes | |
Paragraphs | Yes | |
Line Breaks | Yes | |
Bold | Yes | |
Italic | Yes | |
Blockquotes | Yes | |
Ordered Lists | Yes | |
Unordered Lists | Yes | |
Code | Yes | |
Horizontal Rules | Yes | |
Links | Yes | |
Images | Yes | |
Tables | Yes | |
Fenced Code Blocks | Yes | Syntax highlighting is also supported. |
Footnotes | Yes | |
Heading IDs | Yes | |
Definition Lists | Yes | |
Strikethrough | Yes | You can use two tildes (~~word~~ ) or one tilde (~word~ ) — both work. |
Task Lists | Yes | |
Automatic URL Linking | Yes | |
Disabling Automatic URL Linking | Yes | |
HTML | Yes |
As an added bonus, GitHub Pages provides support for several obscure elements.
Element | Markdown | Rendered Output |
---|---|---|
Abbreviation | *[HTML]: Hyper Text Markup Language The HTML specification is maintained by the W3C. |
The HTML specification is maintained by the W3C. |
Don't stop now! 😎 Drop in to the Slack chat room and star the GitHub repository. If you liked this and want to receive new Markdown tutorials, enter your email address below. No spam!