К основному содержанию
правило

mkdocs — правило для Cursor: документация и установка

Задаёт правила для Markdown-документации в проектах MkDocs с темой Material. Пригодится, если хотите упорядочить навигацию и проверять страницы перед сборкой.

Установить в Cursor · Вручную: положить файлы Все способы и платформы ↓
.cursor/rules/mkdocs.mdc
Открыть на GitHub

Что делает mkdocs

Правило охватывает структуру проекта, Markdown и проверку документации. Оно рассчитано на файлы md и mdx: предлагает хранить mkdocs.yml в корне, а страницы — в docs/, с главной страницей index.md. Для порядка разделов используются файлы .pages и mkdocs-awesome-pages-plugin, а не алфавитная сортировка.

Для страниц задаются один заголовок H1, последовательная иерархия заголовков и строки до 80 символов. Внутренние ссылки должны быть относительными, блоки кода — с языком, а примечания — в формате admonition Material for MkDocs. В CI предлагается запускать markdownlint и mkdocs-code-validator; локально проверяйте сайт командой mkdocs serve. Ошибка в .pages помешает сборке — это важно учитывать при правках навигации.

Какие задачи решает

  • разложить страницы MkDocs по папкам и задать главную
  • упорядочить навигацию через .pages
  • проверить иерархию заголовков и длину строк
  • оформить ссылки, блоки кода и предупреждения по правилам
  • добавить lint и проверку кода в CI

Примеры запросов агенту

  • Проверь Markdown-документацию и исправь нарушения правил MkDocs.
  • Настрой навигацию проекта через .pages и проверь её командой mkdocs serve.
  • Проверь конфигурацию CI для markdownlint и mkdocs-code-validator.

Как установить mkdocs

Вручную: положить файлы

.cursor/rules/mkdocs.mdc

Во frontmatter: description, globs, alwaysApply

По шагам, с командами для каждой платформы: Cursor rules: файлы .mdc, четыре режима и замена .cursorrules

Вопросы о mkdocs

Как установить mkdocs в Cursor?

Добавьте файл правила по пути .cursor/rules/mkdocs.mdc в проект.

Что делает правило mkdocs?

Оно задаёт рекомендации по структуре проекта MkDocs, оформлению Markdown, ссылкам и проверкам документации.

Какие проверки предлагает правило?

В CI предлагаются markdownlint и mkdocs-code-validator, а для локальной проверки — mkdocs serve. Ошибка в .pages может помешать сборке сайта.

Исходный текст

mkdocs.mdc · CC0-1.0
---
description: Definitive guidelines for writing, structuring, and maintaining high-quality MkDocs documentation using modern best practices and Material for MkDocs.
globs: **/*.{md,mdx}
---
# mkdocs Best Practices

This guide establishes the definitive standards for writing and maintaining documentation using MkDocs, especially with the Material for MkDocs theme. Adhere to these rules to ensure consistency, readability, and maintainability across all our projects.

## 1. Code Organization & Structure

Always organize your documentation for logical navigation and maintainability.

### 1.1 Root Structure

Place `mkdocs.yml` at the project root, and all Markdown source files within a top-level `docs/` directory. The homepage must be `index.md`.

❌ BAD:
```
my-project/
├── docs/
│   ├── mkdocs.yml  # mkdocs.yml should be at project root
│   └── homepage.md # Homepage should be index.md
```

✅ GOOD:
```
my-project/
├── mkdocs.yml
└── docs/
    ├── index.md
    └── user-guide/
        └── getting-started.md
```

### 1.2 Navigation Ordering

Control navigation explicitly using the `mkdocs-awesome-pages-plugin` and `.pages` files. Never rely on default alphabetical ordering.

❌ BAD:
```
# mkdocs.yml
nav:
  - Home: index.md
  - API: api.md
  - Setup: setup.md # Order is alphabetical, not logical
```

✅ GOOD:
```
# docs/.pages
nav:
  - Home: index.md
  - Setup: setup.md
  - API: api.md
  - ... # Include remaining pages automatically
```

## 2. Markdown Style & Content

Enforce a strict Markdown style for readability and consistency, ideally with `markdownlint`.

### 2.1 Headings Hierarchy

Use a single H1 (`#`) per page for the main title. Subsequent headings must follow a strict, sequential hierarchy (H2, H3, etc.). Never skip heading levels.

❌ BAD:
```markdown
# My Page Title
### A Sub-section # Skipped H2
```

✅ GOOD:
```markdown
# My Page Title
## Introduction
### Key Concepts
```

### 2.2 Line Length

Limit text lines to 80 characters for improved readability and diffs. Exceptions are allowed for long URLs, tables, and code blocks.

❌ BAD:
```markdown
This is a very long line of text that exceeds eighty characters and makes it difficult to read and review, especially in side-by-side diffs.
```

✅ GOOD:
```markdown
This is a standard line of text that adheres to the eighty-character limit.
It improves readability and simplifies code reviews.
```

### 2.3 Fenced Code Blocks

Always use fenced code blocks with language identifiers for syntax highlighting. Never use indented code blocks.

❌ BAD:
```markdown
    This is an indented code block.
    It lacks syntax highlighting and is harder to read.
```

✅ GOOD:
```python
def hello_world():
    print("Hello, MkDocs!")
```

### 2.4 Internal Links

Use relative paths for all internal links to Markdown files. MkDocs automatically converts these to correct HTML paths.

❌ BAD:
```markdown
Please see the [Getting Started](/user-guide/getting-started/) guide. # Absolute path
Please see the [Getting Started](https://example.com/user-guide/getting-started.md) guide. # Full URL
```

✅ GOOD:
```markdown
Please see the [Getting Started](user-guide/getting-started.md) guide. # Relative path
```

### 2.5 External Links & Buttons

Mark external links to open in a new tab using `{target=_blank}`. Use Material for MkDocs button syntax for prominent calls to action.

❌ BAD:
```markdown
[Our GitHub](https://github.com/our-org) # Opens in same tab
<a href="https://github.com/our-org" class="button">GitHub</a> # Raw HTML
```

✅ GOOD:
```markdown
[Our GitHub](https://github.com/our-org){target=_blank}
[Visit Our Blog](https://practical.li/blog){.md-button .md-button-primary target=_blank}
```

### 2.6 Admonitions

Use Material for MkDocs admonitions for notes, warnings, and tips. Never use blockquotes for this purpose.

❌ BAD:
```markdown
> **Warning:** This action is irreversible.
```

✅ GOOD:
```markdown
!!! warning "Irreversible Action"
    This action is irreversible. Proceed with caution.
```

## 3. Performance & Maintainability

Prioritize automated checks and efficient content delivery.

### 3.1 Automated Linting & Validation

Integrate `markdownlint` and `mkdocs-code-validator` into your CI pipeline. This catches style violations and validates code snippets automatically.

❌ BAD: Relying solely on manual review for Markdown style and code correctness.

✅ GOOD:
```yaml
# .github/workflows/ci.yml
name: Docs CI
on: [push, pull_request]
jobs:
  lint-docs:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: avto-dev/markdown-lint@v1 # markdownlint
      - uses: actions/setup-python@v3
        with:
          python-version: '3.x'
      - run: pip install mkdocs mkdocs-material mkdocs-code-validator
      - run: mkdocs build --strict # mkdocs-code-validator runs during build
```

## 4. Common Pitfalls & Gotchas

Avoid these common mistakes to prevent broken documentation.

### 4.1 Broken Navigation

An invalid `.pages` file will prevent your site from building. Always test changes locally with `mkdocs serve`.

❌ BAD:
```yaml
# docs/.pages (invalid syntax)
nav:
  - Introduction: intro.md
  - Section 1
    - Page 1: page1.md # Incorrect indentation
```

✅ GOOD:
```yaml
# docs/.pages
nav:
  - Introduction: intro.md
  - Section 1:
    - Page 1: page1.md
```

### 4.2 Raw HTML Usage

Avoid embedding raw HTML unless absolutely necessary (e.g., specific embeds like YouTube videos). Prefer Markdown and Material for MkDocs extensions.

❌ BAD:
```markdown
<p style="color: red;">Important text</p>
```

✅ GOOD:
```markdown
!!! danger "Important"
    Important text
```

© sanjeed5 · CC0-1.0 · sanjeed5/awesome-cursor-rules-mdc

Похожие правила IDE

Все правила IDE по теме «Тексты и документация» →
mkdocs-mcp ubaumann Открывает статьи и структуру MkDocs как ресурсы MCP для ИИ-ассистентов. Пригодится, когда нужно дать агенту прямой доступ к локальной документации. CX Codex +1 ★ 9звёзд репо mkdocs-translations официальный github Переводит всю документацию MkDocs на заданный язык: копирует структуру папок, сохраняет Markdown и правит конфиг i18n. Пригодится, если у вас docs на английском, а нужна ещё пара локалей. 8 800установок developer-docs-structure-audit Samuel Berthe Проводит инвентаризацию и аудит структуры документации по методологии Diátaxis. Помогает найти пробелы, смешанные страницы и выстроить очередь правок. CX Codex +1 10 200установок open-knowledge-discovery Inkeep Скилл подсказывает агенту, как устроен OpenKnowledge, как инициализировать проект и как открывать отдельные Markdown-файлы во временном предпросмотре без создания служебных папок. CX Codex +1 15 100установок indexion-readme trkbt10 Скилл собирает README из шаблонов, doc-комментариев и статических файлов, а потом проверяет, что правки ничего не удалили. CX Codex +1 5 100установок

Из того же набора240

Весь набор →
modal Направляет ассистента Cursor при написании кода для Modal: учит настраивать образы, ресурсы GPU и постоянные диски без лишних трат и долгих холодных стартов. ★ 3 580звёзд репо mockito Правило задаёт рекомендации по тестам Java с Mockito и JUnit 5: от настройки моков до проверки аргументов. Пригодится, когда агент пишет или меняет unit-тесты. ★ 3 580звёзд репо mobx Правило для Cursor задаёт структуру MobX-приложения на React: единый RootStore, явные observables и observer только на листовых компонентах. ★ 3 580звёзд репо mlx Направляет Cursor при разработке ML-проектов на Apple Silicon: помогает писать модульный код на MLX, правильно компилировать шаги обучения и избегать ошибок с памятью. ★ 3 580звёзд репо microsoft-teams Правило для Cursor с набором практик разработки приложений Microsoft Teams: структура проекта, Fluent UI, Adaptive Cards и Microsoft Graph. ★ 3 580звёзд репо maven Правило настраивает Cursor для проектов на Maven: помогает выносить зависимости в родительский POM и изолировать их через строгие scope. ★ 3 580звёзд репо matplotlib Правило задаёт практики для кода на matplotlib в файлах Python: объектный API, типы, сохранение графиков и контроль памяти. ★ 3 580звёзд репо material-ui Правило задаёт Cursor единый стиль работы с Material-UI: структура папок, тема, стили и компоненты. Пригодится, если проект на React с MUI растёт и хочется одинаковых решений. ★ 3 580звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой