Setting up mkdocs.yml file is needed in the way to deploy a Mkdocs project, in this file we can set a lot of different values related to the theme, add custom CSS, navigation index, social network and more other things.
Let start with basic parameters:
site_name: '<Site Name>' site_description: '<Site Description>' site_author: '<user>' site_url: 'https://<user>.github.io/<git_repo>' copyright: "copyright © 202X <user>" repo_url: 'https://github.com/<user>/<git_repo>' edit_uri: ""
Next we could add some social networks that will be show in the Mkdocs project:
extra: social: - icon: fontawesome/brands/github link: https://github.com/cosckoya - icon: fontawesome/brands/dev link: https://dev.to/cosckoya
These last two parameter blocks enable some basic functionalities and behaviors. But also we could manage some advanced things about the theme.
Themes can be built-in or custom. Im using a built-in one, Material.
To add this theme, I followed the Material docs and set up the following parameters:
theme: name: material logo: img/logo.png favicon: img/favicon.png language: en palette: scheme: slate primary: deep purple accent: deep purple icon: repo: fontawesome/brands/github
Last step is to set Navigation, where I added a plugin (mkdocs-literate-nav). With this plugin I could remove "nav" settings from mkdocs.yml file, add some "SUMMARY.md" files on each directory adding this block:
plugins: - literate-nav: nav_file: SUMMARY.md
A SUMMARY.md file must exist in each folder, will be automatically detected and should have the following format:
* [Klaatu Barada Nitko!](index.md) * [Code](code/) * [Linux](linux/) * [Databases](databases/) * [Cloud](cloud/) * [Containers](container/) * [Security](security/) * [DevOps](devops/) * [Monitoring](monitoring/) * [Bookmarks](bookmarks.md) * [About](about.md)
That's it. Enjoy!
Top comments (0)