MediaFilez
DocumentationMEDIAFILEZ

Write a documentation page

Create a page without writing application code.

Add a page

  1. Create full/content/docs/en/my-guide.md and write your content in Markdown.
  2. Add a my-guide entry under en in full/content/docs/pages.json.
  3. Copy an existing entry and change its title, description, category, group, icon and order.
  4. Restart or deploy the site. The navigation and search update automatically.

Page settings

JSON
{
    "my-guide": {
        "title": "My guide",
        "description": "What this page explains.",
        "category": "guides",
        "group": "Guides & help",
        "icon": "book",
        "order": 4
    }
}

Categories: start, worker, desktop, analyzer, guides, changelog, reference. Icons: home, book, code, document, clock. Add "draft": true to hide a page. Nested folders produce nested routes.

Formatting

WriteResult
## HeadingSection and contents link
**Important**Bold text
- ItemList
[Label](/download)Link
> NoteNote

Examples and diagrams

Use fenced code blocks with a language such as json, javascript, bash, or http. Verify examples against the implementing code. Label shortened responses as excerpts. Never include real API keys, OAuth codes, cookies, or signed download URLs.

Use absolute internal paths such as /docs/en/reference/jobs. Write diagrams in fenced mermaid blocks. Include accTitle and accDescr for accessible descriptions, and explain the flow in prose. Diagrams render locally with zoom controls and a source view. Do not use remote rendering URLs or raw HTML.

Use a fenced visual block containing resource-id or result-files for the built-in interactive lessons.

For language tabs, put adjacent code fences in the same group. For example, use javascript group="download" title="Node.js" on the first fence and python group="download" title="Python" on the next. The original examples remain readable in the raw Markdown.

For a hosted API request, use a fenced request block with a JSON object containing method, path, and an optional body. The page generates cURL, JavaScript, Python, Node.js, and PowerShell examples. Paths are relative to /api/v1. Set auth to "none" for a public route or "session" for a browser-session route. Session examples only show browser JavaScript. See the media reference source for an example.

Indent JSON and code with four spaces. Keep a blank line before and after guard blocks. Use braces for JavaScript if statements and explain where an example runs, especially when it uses a private API key.

Validate and review

From the repository root:

Shell
npm test
npm run lint -w full
npm run build -w full

Checks cover documentation metadata, internal links and anchors, diagrams, and JSON examples. Review search, copy actions, mobile navigation, and both themes in a browser too.

Commit Markdown and metadata together after review. Local preview does not publish changes. Follow the normal review and release process before deploying.

The changelog's public-releases marker is filled from the public projects listed in the site configuration. It fetches stable release tags and publication dates without authentication and refreshes hourly. Do not add private repositories, credentials, or release bodies to this feed.