english | русский
Yfm-docs lets you build a full-fledged documentation project: with navigation, internal transitions, and full Yandex Flavored Markdown (YFM) support.
Node 22+
npm i @diplodoc/cli -gnpm run start -- -i ./input-folder -o ./output-folder -v "{\"name\":\"Alice\"}"Initialize a new Diplodoc documentation project.
yfm init [options]Running without flags in a terminal starts an interactive wizard. Pass --skip-interactive to use flags and defaults only.
| Option | Default | Description |
|---|---|---|
-o, --output <path> |
. |
Directory to create the project in |
--name <string> |
directory basename | Project name |
--langs <string> |
en |
Comma-separated list of languages, e.g. en,ru |
--default-lang <string> |
first of --langs |
Default language |
--template <string> |
minimal |
minimal or full |
--header |
true |
Add navigation header with controls to toc.yaml |
--force |
false |
Overwrite existing output directory |
--dry-run |
false |
Preview files without writing |
--skip-interactive |
false |
Skip wizard |
minimal
<output>/
├── .yfm
├── toc.yaml
└── index.md
full — adds presets.yaml, pc.yaml and extended .yfm with pdf, search, vcs, authors config.
For multilingual projects (--langs en,ru) content is placed in per-language subdirectories:
<output>/
├── .yfm
├── presets.yaml
├── en/
│ ├── toc.yaml
│ └── index.md
└── ru/
├── toc.yaml
└── index.md
You need to add .env file into repo root with data below:
GITHUB_OWNER=
GITHUB_REPO= # docs
GITHUB_TOKEN= # personal access token
GITHUB_BASE_URL= # for ex: https://api.github.com
VCS_CONNECTOR_TYPE= # githubor you can update .yfm file into docs repo
connector:
type:
github:
endpoint:
token:
owner:
repo:cd cli
npm ci && npm run buildMIT
