Version 10.12.0 release notes

Paste images straight into your content, pick which fields get machine translated, and keep the Front Matter databases mergeable in Git with version 10.12.0.

Published: Aug 21, 2026

This release brings clipboard images into your content files, gives you control over which front matter fields are machine translated, and makes the .frontmatter/database files something Git can actually merge.

Highlights

  • Paste images directly into your Markdown/MDX content, with the folder and metadata handled for you.
  • The new translate field property defines which front matter fields get machine translated.
  • The .frontmatter/database files are now stored in a human readable, Git-friendly format.
  • Translations of nested content keep the folder structure of the source file.

Paste images into your content

Issue #1053 adds clipboard support to your content files. Take a screenshot, paste it into your Markdown or MDX file, and Front Matter CMS stores the image in your project and inserts the markup for you.

The frontMatter.media.pasteBehavior setting defines what happens on paste:

  • dashboard (default): opens the media dashboard, where you pick the folder to store the image in, fill in its metadata, and choose the media snippet to insert it with.
  • auto: stores the image and inserts the markup right away, without any prompts.
  • disabled: leaves the paste to Visual Studio Code.
{
"frontMatter.media.pasteBehavior": "auto",
"frontMatter.media.pasteFolder": "[[workspace]]/public/uploads",
"frontMatter.media.pasteFileName": "{filename}-{date}-{time}"
}

When frontMatter.media.pasteFolder is left empty, the image ends up in the page bundle folder, the Hexo asset folder, or your public folder, depending on your project. Clipboard images have no name of their own, so frontMatter.media.pasteFileName defines the name to use, with support for the {filename}, {date}, and {time} placeholders.

Info

Check the pasting images documentation for more information.

Define which fields get translated

Issue #1055 adds the translate property to your content type fields. It defines which front matter fields are sent to your translation service when creating a translation of your content.

The title and description fields are translated by default. Set translate to false to exclude them, or to true to include fields like a summary or ogTitle.

{
"name": "summary",
"title": "Summary",
"type": "string",
"translate": true
}

The property works on the fields of your content types, on fields nested in a field group, and on the fields of a block field. When the value is a list, each of the values is translated.

Info

Check the multilingual documentation for more information.

Git-friendly database files

The files in the .frontmatter/database folder — mediaDb.json, taxonomyDb.json, and pinnedItemsDb.json — used to be stored on a single minified line. That left Git nothing to merge, so every change by two people at once turned into a conflict on that one line.

From this release on, the databases are written indented and with sorted keys, so Git can merge them line by line. Your existing files are reformatted once, when the extension activates.

On top of that, when one of these files contains invalid JSON or unresolved Git conflict markers, you now get an error notification pointing at the file instead of the extension failing silently.

Translations of nested content

Issue #1054 fixes the “Could not retrieve the locale for the current file” error for multilingual content in subfolders, like content/de/posts/2024/07/my-post/index.md. Translations are now created with the same folder structure as the source file.

🎨 Enhancements

  • #1053: Support pasting images directly into Markdown/MDX files
  • #1055: Added the translate property on content type fields to define which front matter fields need to be machine translated. The title and description fields are translated by default, set translate: false to exclude them
  • The .frontmatter/database files are now stored in a human readable format with sorted keys, so that Git can merge them line by line instead of conflicting on a single line. Existing files are reformatted once, when the extension activates

🐞 Fixes

  • #1043: Fix issue with last modified date in content health freshness checks
  • #1054: Fix the “Could not retrieve the locale for the current file” error for multilingual content nested in subfolders (ex. content/de/posts/2024/07/my-post/index.md). Translations are now created with the same folder structure as the source file
  • Show an error notification when one of the .frontmatter/database files contains invalid JSON or unresolved Git conflict markers, instead of failing silently

Ready to get started?

Special thanks to our backers & sponsors

Contributors