Guide

Kitchen Sink

This Page is the acceptance surface for the DocsPress theme and all fifteen DocsPress Blocks. Switch Global Style variations and light/dark mode while checking native color, typography, spacing, border, dimensions, interactions, and content controls.

Audience Paths

Choose a starting point

Where are your docs today?

Independent documentation roots can meet readers at the state of their repository.

Colorful Code

yaml .github/workflows/sync-docs.yml
name: Sync docson:  push:    paths: ["docs/**"]steps:  - uses: Automattic/docspress@COMMIT_SHA
Filename, language, line numbers, highlighted ranges, caption, and copy.
plaintext Without line numbers
Markdown in.WordPress out.
Plain text with line numbers disabled.
json page-response.diff
@@ page 43 @@-  "status": "draft"+  "status": "publish"+  "modified": "2026-07-27T07:40:00Z"
Unified diff colors, final-state copy, and line-level explanations.

Code Tabs

Terminal
npm install docspress
The maximum eight compact tabs with independent labels, languages, filenames, and code.

Callouts

Collapsible and open

Readers can hide this longer explanation.

Collapsible and closed

This content begins hidden and remains keyboard accessible.

Flow

  1. Template

    Choose full or empty for the starting content.

  2. Deploy target

    Select the host that matches the project environment.

  3. Install dependencies

    Let the package manager finish, then verify the generated site.

Diagram

Flow

Documentation publishing flow

3 relationships
A flow diagram rendered as accessible, theme-native SVG without a third-party runtime.
Sequence

Runnable request lifecycle

4 relationships
Sequence mode uses the same compact, editable relationship syntax.

API Request / Response

Request GET /wp-json/
HeadersKey: value
Accept application/json
Try it Run this request
Credentials omitted
Ready
Example response 200 OK
BodyJSON
{
  "name": "DocsPress",
  "namespaces": ["wp/v2"]
}
Request POST /wp-json/wp/v2/pages
HeadersKey: value
Content-Type application/jsonAuthorization Bearer $WP_ACCESS_TOKEN
Request bodyJSON
{
  "title": "API reference",
  "status": "draft"
}
Response 201 Created
BodyJSON
{
  "id": 43,
  "status": "draft"
}
Request PUT /wp-json/wp/v2/pages/43
HeadersKey: value
Content-Type application/x-www-form-urlencoded
Request bodyRAW
title=REST+API+Reference
Response 200 OK
BodyRAW
Updated page 43: REST API Reference
Request PATCH /wp-json/wp/v2/pages/43
HeadersKey: value
Content-Type application/json
Request bodyJSON
{ "status": "publish" }
Response 200 OK
BodyJSON
{ "id": 43, "status": "publish" }
Request DELETE /wp-json/wp/v2/pages/43?force=true
HeadersKey: value
Authorization Bearer $WP_ACCESS_TOKEN
Response 204 No Content

Fields / Schema

Reference

Publish options

Typed request fields, defaults, constraints, and lifecycle states remain scannable as the reference grows.
4 fields
site string required
WordPress site domain or numeric site ID.
status enum
Publication status for synchronized Pages.
dryRun boolean
Preview reconciliation without writing changes.
legacyMode boolean deprecated
Use the pre-block-theme publishing pipeline.

Terminal Session

Run package verification bash
npm run package
Lint passed
Tests passed
Action bundle rebuilt
Inspect the site wp-cli
wp option get docspress_playground_runtime --format=json

Live Code Playground

Browser sandbox Interactive publish button
Network blocked
Result Starting…
Console
Console output appears here.

Result

Success
All checks passed

The generated Pages match the repository tree.

20 pages
Neutral
No changes required

WordPress already matches the current commit.

0 updates
Warning
Drafts need review

Three new Pages are waiting for editorial approval.

3 drafts
Error
Synchronization failed

The access token cannot create Pages on this site.

HTTP 403

File Tree

Automattic/docspress/ File tree
  • .claude/
    • skills/
  • docs/
    • index.md
    • publish-existing-docs/
    • create-docs-with-ai/
    • reference/
      • kitchen-sink.md
  • plugins/
    • docspress-blocks/
  • theme/
  • package.json
Nested folders, files, a custom root label, and caption.
docs/ File tree
  • index.md
  • guides/
    • continuous-sync.md
  • reference/
    • gutenberg-blocks/
      • index.md
      • api-request.md
      • fields.md
  • troubleshooting.md
A compact tree that begins collapsed.

Prompt

Prompt GPT-5 Chat
Explain DocsPress to a new contributor in three short paragraphs.
@documentation https://github.com/Automattic/docspress
Contributor explainer
Prompt Claude Sonnet Code Thinking
Review the synchronization function for race conditions. Return risks first, then the smallest safe patch.
@repository src/sync.js test/sync.test.js #trace
Race-condition review
Prompt Gemini Pro Ask
Which Action inputs affect the generated WordPress Page hierarchy?
action.yml src/docs.js
Configuration question
Prompt Planning agent Plan Thinking
Use $docspress-install to create a phased migration plan from a static documentation site to DocsPress.
$docspress-install docs/ #architecture https://example.com/current-docs
Migration plan with a skill reference

Interactive Troubleshooter

Guided diagnosis

Choose the right publishing workflow

Answer two quick questions to reach a source-grounded next step.
Question 1
Question 1

Do you already have Markdown documentation?

Success
Kitchen Sink complete

Every DocsPress documentation block, semantic variant, and meaningful option is represented on this Page. Hero and Audience Paths are the design-focused landing blocks.

13 documentation blocks · 2 landing blocks

Playground runtime

This inventory is generated from the running WordPress installation.

ComponentTypeVersionStatus
WordPressCore7.0.2Running
DocsPressTheme0.9.17Active
Akismet Anti-spam: Spam ProtectionPlugin5.7Active
DocsPress BlocksPlugin0.9.12Active
JetpackPlugin16.1-a.3Active