Version 8.4.0 release notes

Get ready to level up your Front Matter CMS experience with the latest 8.4.0 release! ๐Ÿš€ We've packed this update with a ton of new features including support for external UI scripts, implementation of Front Matter AI powered by mendable.ai, added taxonomy AI suggestions for GitHub sponsors, and more! ๐Ÿ’ช

Published:

๐Ÿงช Experimental features

In this release, the following features are marked as experimental. This means that they are not fully tested and might not work as expected. If you find any issues, please let me know in the GitHub repository.

  • External UI script support for dashboards
  • Visual Studio Code Theming support for the dashboards
  • Front matter AI to help you with your configuration

Info: To enable the experimental features you need to set the frontMatter.experimental setting to true.

๐Ÿ™ Exclusive Features for Sponsors

We're excited to announce a brand new feature exclusively available to sponsors of Front Matter CMS. With this update, we've added Front Matter AI to the project, which provides helpful suggestions for creating new content such as title suggestions and tag/category suggestions.

Important: To access the Front Matter AI feature, you will need to sign-in (backers & supports sign-in instructions) and set the frontMatter.sponsors.ai.enabled setting to true and you're good to go! We put it behind a setting to not automatically enable it and let you decide if you want to use it or not.

Front Matter AI - Title suggestions

If you're not already a sponsor, now is a great time to consider supporting the project. By becoming a sponsor, you not only gain access to exclusive features like Front Matter AI, but also help to support the ongoing development and maintenance of the project. You can become a sponsor by visiting the GitHub sponsor page.

More information can be found in the sponsor features documentation.

UI extensibility

In this release, we've added support for UI extensibility. This means that you can now extend the UI of the Front Matter CMS with your own custom elements and components. This can be done in the content dashboard and the panel.

It allows you to register your own JavaScript file, to override or enrich the UI on the following places:

  • Content dashboard

    • Card image
    • Card footer
  • Panel

    • Custom panel view
    • Custom fields

Custom card footer

More information can be found in the UI extensibility documentation.

Getting help from our AI assistant

AI is hot these days, so we couldn't resist to add some AI to Front Matter CMS where it would make most sense for our users. That is why we added a chatbot which is integrated with OpenAI and our documentation. When you have a question about Front Matter CMS, you can now ask the chatbot and it will try to answer your question and/or give references to the documentation.

Front Matter AI Assistent

More information can be found in the Front Matter AI documentation.

Important: This AI feature is available for everyone using Front Matter CMS.

Support to manage multiple projects

With the new frontMatter.projects setting, we now support managing multiple projects in the same workspace. This means that you can now have multiple projects/websites, and each of them can have their own configuration.

Example project configuration
{
  "frontMatter.projects": [
    {
      "name": "blog",
      "default": true,
      "configuration": {
        "frontMatter.content.pageFolders": [{
          "title": "Blog posts",
          "path": "[[workspace]]/websites/blog/posts"
        }],
        "frontMatter.content.publicFolder": "[[workspace]]/websites/blog/public"
      }
    },
    {
      "name": "portfolio",
      "configuration": {
        "frontMatter.content.pageFolders": [{
          "title": "Portfolio",
          "path": "[[workspace]]/websites/portfolio/content"
        }],
        "frontMatter.content.publicFolder": "[[workspace]]/websites/portfolio/public"
      }
    }
  ]
}

When you are using the projects feature, you'll be able to switch between projects using the Front Matter: Switch project command or UI elements.

Project switching

More information can be found in the project documentation.

Multiline support for string fields in data view

In this release, we've added support for multiline strings support in the data view. This means that you can now use the string field type to create a multiline string by adding the multiline property to the field.

Sponsor data
Example enabling multiline support
{
  ...,
  "schema": {
    "title": "Sponsors",
    "type": "object",
    "required": [
      "name",
      "url"
    ],
    "properties": {
      "name": {
        "type": "string",
        "title": "Name"
      },
      "url": {
        "type": "string",
        "title": "URL"
      },
      "description": {
        "type": "string",
        "title": "Description",
        "multiline": true
      }
    }
  }
}

More information can be found in the data view documentation.

Support for Astro

We're thrilled to announce that Front Matter CMS now supports Astro projects! With this update, when you initialize a new project that uses Astro, Front Matter CMS will automatically detect it. This means that you can now easily manage your Astro content using Front Matter CMS. Enjoy!

Astro support

The frontmatter.json file now allows comments

In this release, we added a jsonc file association for the frontmatter.json and all JSON files which you might have in the .frontmatter/config folder. This means that you can use comments without getting any warnings from Visual Studio Code.

Git submodule support

If you are managing your content using Git submodules, you can now use the new Git submodule settings to gain more control over the syncing process.

We've added the following settings:

SettingDescriptionDefault
frontMatter.git.submodule.pushWhether to push the submodule changes to the remote repository.false
frontMatter.git.submodule.pullWhether to pull the submodule changes from the remote repository.false
frontMatter.git.submodule.branchThe branch to use for the submodule.``
frontMatter.git.submodule.folderThe folder where the submodule is located.``

More information can be found in the Git submodule documentation.

โœจ New features

  • #363: Multiline support for the string field in data view
  • #513: Added support for external UI scripts to add custom HTML on the dashboard elements
  • #530: Implementation of the Front Matter AI ๐Ÿค– powered by mendable.ai
  • #537: Allow to use the root path / as the public folder
  • #541: Added title AI suggestions for GitHub sponsors
  • #548: Project selection support when working in mono-repos or multi-root workspaces
  • #550: Added taxonomy (tags/categories) AI suggestions for GitHub sponsors

๐ŸŽจ Enhancements

  • Added an unknown field for uniforms when it has no type defined
  • #512: Added the jsonc file association for the frontMatter.json file. That way, you can use comments in the file.
  • #522: Configuration support added for Astro
  • #523: Added support for floating/decimal numbers with a new number field property called numberOptions
  • #524: Removed the Global settings view from the panel. You can still get it back by configuring a custom view mode.
  • #535: Retain the scroll position after selecting a media file
  • #538: Added support to encode emojis in the string field
  • #549: Git submodule support to sync changes
  • #554: When inserting snippets, only the content snippets will be shown

โšก๏ธ Optimizations

  • #534: Moved the mediaDb.json file to a .frontmatter/database folder instead of the .frontmatter/content folder
  • #536: Set the start location from the script to the root of the workspace
  • #555: When generating a content-type from existing content, Front Matter will better detect the type of field
  • #556: Content values are aligned to the type of field

๐Ÿž Fixes

  • #518: Fix an issue where the YAML parser adds line breaks to long strings
  • #520: Add the URL protocol to the host on opening the preview if it's missing
  • #521: Fix empty snippets dashboard placeholder
  • #526: Fix card content menu
  • #528: Fix where the .astro code section --- is seen as front matter
  • #529: Fix YAML parsing in Windows which added an extra carriage return
  • #531: Fix prettier update which caused data views to not render list items
  • #539: Fix the override of the default file prefix on content creation
  • #543: Fix JSON schema for script commands
  • #547: Fix setting default value in a hidden group field (block)
  • #552: Fix for content retrieval in multi-root workspaces
  • #557: Fix for dropdown of the tag picker

Ready to get started?

Special thanks to our backers & sponsors

VercelBEJS Community