english | русский

yfm-docs
Yfm-docs lets you build a full-fledged documentation project: with navigation, internal transitions, and full
Yandex Flavored Markdown (YFM) support.

Documentation
ydocs.tech
Requirements
Node 22+
Usage
npm i @diplodoc/cli -g
npm run start -- -i ./input-folder -o ./output-folder -v "{\"name\":\"Alice\"}"
yfm init
Initialize a new Diplodoc documentation project.
Usage
yfm init [options]
Running without flags in a terminal starts an interactive wizard. Pass --skip-interactive to use flags and defaults only.
Options
-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 |
Created files
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
Source files
Preparation
You need to add .env file into repo root with data below:
GITHUB_OWNER=
GITHUB_REPO=
GITHUB_TOKEN=
GITHUB_BASE_URL=
VCS_CONNECTOR_TYPE=
or you can update .yfm file into docs repo
connector:
type:
github:
endpoint:
token:
owner:
repo:
Build from source
cd cli
npm ci && npm run build
License
MIT