Type object
File match readthedocs.yml readthedocs.yaml .readthedocs.yml .readthedocs.yaml
Schema URL https://catalog.lintel.tools/schemas/schemastore/read-the-docs/latest.json
Source https://raw.githubusercontent.com/readthedocs/readthedocs.org/master/readthedocs/rtd_tests/fixtures/spec/v2/schema.json

Validate with Lintel

npx @lintel/lintel check
Type: object

Read the Docs configuration file.

Properties

version number required

The version of the spec to use.

Values: 2
formats enum[] | enum

Formats of the documentation to be built.

Default:
[]
conda object

Configuration for Conda support.

1 nested properties
environment string required

The path to the Conda environment file from the root of the project.

build object

Configuration for the documentation build process.

Any of: variant, variant
5 nested properties
os enum required

Operating system to be used in the build.

Values: "ubuntu-20.04" "ubuntu-22.04" "ubuntu-24.04" "ubuntu-26.04" "ubuntu-lts-latest"
jobs object

Run custom commands at any point in the build process

12 nested properties
post_checkout string[]
pre_system_dependencies string[]
post_system_dependencies string[]
pre_create_environment string[]
create_environment string[]

Override the default environment creation process.

post_create_environment string[]
pre_install string[]
install string[]

Override the default installation process.

post_install string[]
pre_build string[]
build object

Override the default build process.

4 nested properties
html string[]
htmlzip string[]
pdf string[]
epub string[]
post_build string[]
tools object

Tools and their version to be used in the build.

5 nested properties
python enum
Values: "2.7" "3" "3.6" "3.7" "3.8" "3.9" "3.10" "3.11" "3.12" "3.13" "3.14" "latest" "miniconda3-4.7" "miniconda3-3.12-24.1" "miniconda3-3.12-24.9" "miniconda-latest" "mambaforge-4.10" "mambaforge-22.9" "mambaforge-23.11" "mambaforge-latest" "miniforge3-25.11" "miniforge3-latest"
nodejs enum
Values: "14" "16" "18" "19" "20" "22" "23" "24" "25" "latest"
ruby enum
Values: "3.3" "3.4" "latest"
rust enum
Values: "1.55" "1.61" "1.64" "1.70" "1.75" "1.78" "1.82" "1.86" "1.91" "latest"
golang enum
Values: "1.17" "1.18" "1.19" "1.20" "1.21" "1.22" "1.23" "1.24" "1.25" "latest"
apt_packages string[]

List of packages to be installed with apt-get.

Default:
[]
commands string[]

Override the whole build process with custom commands. When using this option, none of the commands from build.jobs will be executed.

python object

Configuration of the Python environment to be used.

1 nested properties
install object | object[]

Installation of packages and requirements.

sphinx object

Configuration for sphinx documentation.

3 nested properties
configuration string required

The path to the conf.py file.

builder enum

The builder type for the sphinx documentation.

Default: "html"
Values: "html" "dirhtml" "singlehtml"
fail_on_warning boolean

Add the -W option to sphinx-build.

Default: false
mkdocs object

Configuration for mkdocs documentation.

2 nested properties
configuration string required

The path to the mkdocs.yml file.

fail_on_warning boolean

Add the --strict option to mkdocs build.

Default: false
submodules object

Submodules configuration.

3 nested properties
include string[] | enum

List of submodules to be included.

Default:
[]
exclude string[] | enum

List of submodules to be ignored.

Default:
[]
recursive boolean

Do a recursive clone?

Default: false