Repository structure
Guides are organized in a three-level hierarchy: universe → product → guide. All content lives under thepages/ folder.
File naming convention
Every file must follow this naming pattern:| Component | Description |
|---|---|
content-type | One of: home, universe, product, guide |
language | ISO 639-1 language code (see list below) |
zone | ISO 3166-1 country/region code (see list below) |
guide.en-gb.md, universe.fr-fr.md, product.de-de.md
Supported languages
Supported languages
| Code | Language |
|---|---|
de | German |
en | English |
es | Spanish |
fr | French |
it | Italian |
pl | Polish |
pt | Portuguese |
Supported zones
Supported zones
| Code | Region |
|---|---|
asia | Asia |
au | Australia |
ca | Canada |
de | Germany |
es | Spain |
fr | France |
ie | Ireland |
it | Italy |
gb | United Kingdom |
pl | Poland |
pt | Portugal |
sg | Singapore |
us | World English / World Spanish |
Authorized language-zone combinations
Authorized language-zone combinations
Guide metadata (YAML frontmatter)
Each guide file opens with a YAML frontmatter block:| Field | Description | Required |
|---|---|---|
title | Title of the guide | Yes |
excerpt | Short description of the guide | Yes |
hidden | Set to true to hide from navigation (default: false) | No |
The
slug, section, and order fields are deprecated. Do not use them in new guides.meta.yaml file
Every guide folder must contain ameta.yaml file with the following fields:
| Field | Description | Required |
|---|---|---|
id | UUID4 unique identifier for the guide | Yes |
full_slug | The slug component of the guide’s URL | Yes |
uuidgen in a terminal. Base the full_slug on related existing guides, include only important keywords, and keep it short.
Images
Store images in animages/ subfolder inside the guide’s folder. Reference them with a relative path from the guide file.
- Format:
.pngonly - Width: Resize images that exceed 1400px wide
- Language: Use the English UI when taking screenshots
- Highlights: Use OrangeSunrise (
#ff9803— RGBA: 255, 152, 3, 1) for highlighting - Privacy: Blur or remove IPs, user IDs, private URLs, and any other sensitive information
Index structure
Thepages/index.md file is the single source of truth for how guides are organized on the public documentation website.
The index supports up to three category levels below the Knowledge Base root. Use four-space increments for indentation.
index-translations.<language>.yaml files.
When you add a new guide, update the index to list it in the correct category. If the category does not exist yet, you can create it — but you must also add its translations to all seven index-translations.<language>.yaml files.
Custom Markdown extensions
OVHcloud guides extend standard Markdown with several custom block types using the> [!type] blockquote syntax.
Notice blocks
Use notice blocks to call out important information:Tabs
Use tabs to present alternative instructions (for example, different operating systems or methods):FAQ
Use the FAQ block for structured question-and-answer content:Carousel
Use the carousel block to display multiple images with captions:API block
Use the API block to reference an OVHcloud API endpoint:Writing standards
Follow these standards across all guides:- Write in second person (“you”) and active voice
- Verify and test every action you describe — do not write about anything you cannot test yourself
- Use the same layout and structure as existing guides; treat them as templates
- Use English UI screenshots wherever possible
- Keep guides focused on a single task or concept
- Use descriptive commit messages