> mkdocs
Build documentation sites with MkDocs and Material for MkDocs. Use when a user asks to create project documentation, configure MkDocs themes, add search and navigation, deploy docs to GitHub Pages, or customize Markdown extensions.
curl "https://skillshub.wtf/TerminalSkills/skills/mkdocs?format=md"MkDocs — Python Documentation Generator
Overview
You are an expert in MkDocs with the Material theme, the Python-powered documentation site generator. You help developers build documentation from Markdown with auto-navigation, search, versioning, and Material Design styling. MkDocs Material is the most popular documentation theme on GitHub, used by FastAPI, Pydantic, and hundreds of open-source projects.
Instructions
Setup
pip install mkdocs-material
mkdocs new my-docs && cd my-docs
mkdocs serve # Live preview at localhost:8000
mkdocs build # Generate static site
Configuration
# mkdocs.yml — Full configuration
site_name: My SDK Documentation
site_url: https://docs.example.com
repo_url: https://github.com/org/repo
repo_name: org/repo
theme:
name: material
palette:
- scheme: default
primary: indigo
accent: indigo
toggle:
icon: material/brightness-7
name: Switch to dark mode
- scheme: slate
primary: indigo
accent: indigo
toggle:
icon: material/brightness-4
name: Switch to light mode
features:
- navigation.instant # SPA-like navigation
- navigation.tracking # URL updates as you scroll
- navigation.tabs # Top-level tabs
- navigation.sections # Group sidebar items
- navigation.expand # Auto-expand sidebar sections
- navigation.top # Back to top button
- search.suggest # Search suggestions
- search.highlight # Highlight search terms
- content.code.copy # Copy button on code blocks
- content.code.annotate # Code annotations
- content.tabs.link # Linked content tabs
- announce.dismiss # Dismissible announcements
plugins:
- search
- tags
- social # Auto-generate social cards
markdown_extensions:
- admonition # Callout boxes
- pymdownx.details # Collapsible callouts
- pymdownx.superfences # Nested code blocks, Mermaid
- pymdownx.tabbed:
alternate_style: true # Content tabs
- pymdownx.highlight:
anchor_linenums: true
- pymdownx.emoji:
emoji_index: !!python/name:material.extensions.emoji.twemoji
- attr_list
- md_in_html
- toc:
permalink: true
nav:
- Home: index.md
- Getting Started:
- Installation: guide/installation.md
- Quick Start: guide/quickstart.md
- Configuration: guide/configuration.md
- API Reference:
- Client: api/client.md
- Authentication: api/auth.md
- Changelog: changelog.md
Markdown Features (Material Theme)
## Admonitions (Callout Boxes)
!!! note "Custom Title"
This is a note with a custom title.
!!! warning
This is a warning. Pay attention.
!!! tip "Pro Tip"
Use admonitions to highlight important information.
!!! danger "Breaking Change"
This API is deprecated and will be removed in v3.0.
??? info "Click to expand"
This is a collapsible admonition.
## Content Tabs
=== "Python"
```python
import my_sdk
client = my_sdk.Client(api_key="xxx")
```
=== "JavaScript"
```javascript
import { Client } from "my-sdk";
const client = new Client({ apiKey: "xxx" });
```
=== "cURL"
```bash
curl -H "Authorization: Bearer xxx" https://api.example.com/v1/users
```
## Code Annotations
```python
client = Client(
api_key="xxx", # (1)!
timeout=30, # (2)!
retry=True, # (3)!
)
- Get your API key from the dashboard
- Timeout in seconds. Default is 60.
- Automatically retry on 429 and 5xx errors
## Installation
```bash
pip install mkdocs-material
Examples
Example 1: User asks to set up mkdocs
User: "Help me set up mkdocs for my project"
The agent should:
- Check system requirements and prerequisites
- Install or configure mkdocs
- Set up initial project structure
- Verify the setup works correctly
Example 2: User asks to build a feature with mkdocs
User: "Create a dashboard using mkdocs"
The agent should:
- Scaffold the component or configuration
- Connect to the appropriate data source
- Implement the requested feature
- Test and validate the output
Guidelines
- Material theme — Always use
mkdocs-material; the default theme is functional but Material is beautiful and feature-rich - Code annotations — Use code annotations
(1)!for inline explanations; cleaner than long comments - Content tabs — Show examples in multiple languages side by side; users pick their stack
- Admonitions for callouts — Use
!!! note/warning/tip/dangerfor important information; more visible than bold text - Auto-generate API docs — Use
mkdocstringsplugin to generate API reference from Python docstrings - Versioning — Use
mikefor versioned documentation; readers can switch between v1.0, v2.0, latest - Social cards — Enable the social plugin for auto-generated Open Graph images; looks great on Twitter/Slack
- GitHub Pages deployment —
mkdocs gh-deploypushes to GitHub Pages in one command; add to CI for auto-deploy on merge
> related_skills --same-repo
> zustand
You are an expert in Zustand, the small, fast, and scalable state management library for React. You help developers manage global state without boilerplate using Zustand's hook-based stores, selectors for performance, middleware (persist, devtools, immer), computed values, and async actions — replacing Redux complexity with a simple, un-opinionated API in under 1KB.
> zoho
Integrate and automate Zoho products. Use when a user asks to work with Zoho CRM, Zoho Books, Zoho Desk, Zoho Projects, Zoho Mail, or Zoho Creator, build custom integrations via Zoho APIs, automate workflows with Deluge scripting, sync data between Zoho apps and external systems, manage leads and deals, automate invoicing, build custom Zoho Creator apps, set up webhooks, or manage Zoho organization settings. Covers Zoho CRM, Books, Desk, Projects, Creator, and cross-product integrations.
> zod
You are an expert in Zod, the TypeScript-first schema declaration and validation library. You help developers define schemas that validate data at runtime AND infer TypeScript types at compile time — eliminating the need to write types and validators separately. Used for API input validation, form validation, environment variables, config files, and any data boundary.
> zipkin
Deploy and configure Zipkin for distributed tracing and request flow visualization. Use when a user needs to set up trace collection, instrument Java/Spring or other services with Zipkin, analyze service dependencies, or configure storage backends for trace data.