Custom Formatters
To manage content with other file formats than the built in ones, you can register a custom formatter:
const JSON5 = require("json5");
CMS.registerCustomFormat("json5", "json5", {
fromFile: (text) => JSON5.parse(text),
toFile: (value) => JSON5.stringify(value, null, 2),
});
Then include format: json5 in your collection configuration. See the Collection docs for more details.
You can also override the in-built formatters. For example, to change the YAML serialization method from yaml to js-yaml:
const jsYaml = require("js-yaml");
CMS.registerCustomFormat("yml", "yml", {
fromFile: (text) => jsYaml.load(text),
toFile: (value) => jsYaml.dump(value),
});