Skip to content

Choose the common options ​

Engine settings are string values in the publish hash in the Makefile.PL META_MERGE x_documentaton section. They are not nested beneath the selected engine name. These options are shared by the normal workflows:

  • module

    Selects mkdocs, vitepress, docusaurus, starlight, or a fully qualified installed subclass. MkDocs is the default. You can also supply your own custom module if inheriting, e.g. "ACME::Publish"

  • sources

    An array of source directories. Omit it to use the doc/ convention and sidecar fallback.

  • name

    The generated site title. Under MakeMaker it defaults to NAME; standalone use otherwise defaults to Documentation.

  • output

    The rendered site directory. The default is site/.

  • base

    The deployment path for generated VitePress, Docusaurus, and Starlight configuration. It begins and ends with a slash, for example /example-client/.

  • branch

    The local Git publication branch. The default is gh-pages.

  • config

    An authored native engine configuration. It is authoritative where the selected backend documents that behaviour.

  • config_extend

    A supplemental file that customises generated defaults. It cannot be combined with config.

  • host and port

    Override the development server listener where the backend supports it.

MARKDOWN_PUBLISH_MODULE environment variables override the configured engine options at runtime. This is handy for comparing renderers without editing Makefile.PL or a project file:

sh
MARKDOWN_PUBLISH_MODULE=starlight make publish_serve
MARKDOWN_PUBLISH_MODULE=vitepress make publish_build

MARKDOWN_PUBLISH_HOST and MARKDOWN_PUBLISH_PORT provide global preview defaults for port and listening IP. MARKDOWN_PUBLISH_NPM_VERBOSE=1 shows normal npm installation output for the Node-based publishers.