2020-03-26 11:19:20 +01:00
|
|
|
|
---
|
|
|
|
|
template: overrides/main.html
|
|
|
|
|
---
|
|
|
|
|
|
2016-02-09 21:59:37 +01:00
|
|
|
|
# Getting started
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
Material for MkDocs is a theme for [MkDocs][1], a static site generator geared
|
|
|
|
|
towards technical documentation. If you're familar with Python, you can install
|
|
|
|
|
Material for MkDocs with [`pip`][2], the Python package manager. If not, we
|
|
|
|
|
recommended using [`docker`][3].
|
2016-02-09 21:59:37 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
[1]: https://www.mkdocs.org
|
|
|
|
|
[2]: #with-pip
|
|
|
|
|
[3]: #with-docker
|
2016-02-09 21:59:37 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
## Installation
|
2016-02-09 21:59:37 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
### with pip
|
2016-12-29 17:55:08 +01:00
|
|
|
|
|
2020-03-09 16:48:52 +01:00
|
|
|
|
Material for MkDocs can be installed with `pip`:
|
2016-02-09 21:59:37 +01:00
|
|
|
|
|
|
|
|
|
``` sh
|
|
|
|
|
pip install mkdocs-material
|
|
|
|
|
```
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
This will automatically install compatible versions of all dependencies:
|
|
|
|
|
[MkDocs][1], [Markdown][4], [Pygments][5] and [PyMdown Extensions][6]. Material
|
|
|
|
|
for MkDocs always strives to support the latest versions, so there's no need to
|
|
|
|
|
install those packages separately.
|
2017-03-11 18:01:14 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
If you're running into problems, read the section on [virtual environments][7].
|
2017-03-11 18:01:14 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
[4]: https://python-markdown.github.io/
|
|
|
|
|
[5]: https://pygments.org/
|
|
|
|
|
[6]: https://facelessuser.github.io/pymdown-extensions/
|
|
|
|
|
[7]: #virtual-environments
|
2017-03-11 18:01:14 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
### with docker
|
2017-03-11 18:01:14 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
The official [Docker image][8] is a great way to get up and running in a few
|
2020-03-09 16:48:52 +01:00
|
|
|
|
minutes, as it comes with all dependencies pre-installed. Pull the image for the
|
|
|
|
|
`latest` version with:
|
2017-11-05 14:40:30 +01:00
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
docker pull squidfunk/mkdocs-material
|
|
|
|
|
```
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
The `mkdocs` executable is provided as an entry point and `serve` is the
|
|
|
|
|
default command. If you're not familar with Docker don't worry, we have you
|
|
|
|
|
covered in the following sections.
|
2020-03-09 16:48:52 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
[8]: https://hub.docker.com/r/squidfunk/mkdocs-material/
|
2017-11-05 14:40:30 +01:00
|
|
|
|
|
2020-03-09 16:48:52 +01:00
|
|
|
|
### with git
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
Material for MkDocs can be directly used from [GitHub][9] by cloning the
|
2020-03-09 16:48:52 +01:00
|
|
|
|
repository into a subfolder of your project root which might be useful if you
|
|
|
|
|
want to use the very latest version:
|
|
|
|
|
|
|
|
|
|
``` sh
|
|
|
|
|
git clone https://github.com/squidfunk/mkdocs-material.git
|
2017-11-05 14:40:30 +01:00
|
|
|
|
```
|
2020-03-09 16:48:52 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
The theme will reside in the folder `mkdocs-material/material`. Note that when
|
|
|
|
|
cloning from `git`, you must install all required dependencies yourself:
|
2016-02-09 21:59:37 +01:00
|
|
|
|
|
|
|
|
|
``` sh
|
2020-05-31 15:40:41 +02:00
|
|
|
|
pip install -r mkdocs-material/requirements.txt
|
2016-02-09 21:59:37 +01:00
|
|
|
|
```
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
[9]: https://github.com/squidfunk/mkdocs-material
|
2020-03-09 16:48:52 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
## Virtual environments
|
2020-03-09 16:48:52 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
If you're installing Material for MkDocs with `pip`, the easiest way to make
|
|
|
|
|
sure that you end up with the correct versions and without any incompatibility
|
|
|
|
|
problems between packages it to use a [virtual environment][9]. First, ensure
|
|
|
|
|
that you have a Python version of 3 or higher installed:
|
2016-02-17 18:08:11 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
``` sh
|
|
|
|
|
python --version
|
2017-10-31 19:42:43 +01:00
|
|
|
|
```
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
If you're good to go, create and activate a virtual environment with:
|
2017-10-31 19:42:43 +01:00
|
|
|
|
|
|
|
|
|
```
|
2020-05-31 15:40:41 +02:00
|
|
|
|
python -m venv venv
|
|
|
|
|
source ./venv/bin/activate
|
2017-11-01 12:04:22 +01:00
|
|
|
|
```
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
Note that the second `venv` is the name of the folder where to create the
|
|
|
|
|
virtual environment – you may choose it as you like. Your terminal should now
|
|
|
|
|
print `(venv)` before the prompt and the `python` executable should be located
|
|
|
|
|
inside the folder you just created:
|
2017-03-11 17:24:03 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
``` sh
|
|
|
|
|
which python
|
2016-02-09 21:59:37 +01:00
|
|
|
|
```
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
Next, install Material for MkDocs with `pip`, which will download and install
|
|
|
|
|
all packages in the `venv` folder you just created, including MkDocs and its
|
|
|
|
|
dependencies:
|
2017-10-31 19:42:43 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
``` sh
|
|
|
|
|
pip install mkdocs-material
|
2018-11-17 17:51:35 +01:00
|
|
|
|
```
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
Verify that MkDocs and Material for MkDocs were both installed correctly:
|
2016-03-12 13:21:06 +01:00
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
``` sh
|
|
|
|
|
mkdocs --version
|
|
|
|
|
mkdocs serve --help
|
2016-03-12 13:21:06 +01:00
|
|
|
|
```
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
MkDocs should list `material` as an option under the `--theme` flag. When you're
|
|
|
|
|
finished working with MkDocs, you can exit the virtual environment with:
|
2020-04-02 13:23:38 +02:00
|
|
|
|
|
2017-02-24 22:53:12 +01:00
|
|
|
|
```
|
2020-05-31 15:40:41 +02:00
|
|
|
|
deactivate
|
2016-02-09 21:59:37 +01:00
|
|
|
|
```
|
|
|
|
|
|
2020-05-31 15:40:41 +02:00
|
|
|
|
[9]: https://docs.python.org/3/tutorial/venv.html
|