Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Syncs markdown documentation with code examples.


Via npm:

npm i -D markdown-code-example-inserter

It's recommended to install this package as a dev dependency as it is a build-step operation.


Markdown files

Add an HTML comment that starts with the following text: example-link:. Then after that text, include a file path to the example file:

<!-- example-link: src/readme-examples/do-thing.ts -->

Here's an example from the GitHub repo. And here is the same file with the code examples inserted.


npx md-code [...moreFiles]

Any of the file names can be a glob. Put the glob in quotes if you wish to prevent your shell from expanding it (this package will expand the glob):

npx md-code "./*.md"

Check only

Use --check.

Check if the given files are updated, don't write anything.

npx md-code --check

Force an index file

Use --index.

Force an index file for imports that should be rewritten with your package name:

npx md-code --index path/to/index.ts [...moreFiles]

The index file is used to replace relative imports with package name imports. Like changing import from '../../index' to import from 'my-package'.

Ignore a pattern

Use --ignore.

npx md-code "./**/*.md" --ignore "./test-files/**/*"

Multiple --ignore patterns can be used:

npx md-code "./**/*.md" --ignore "./test-files/**/*" -ignore "./test-files/**/*"

node_modules is automatically ignored.

Turn off logging

Use --silent

npx md-code --silent