Maintaining the Website
This website is generated by Docusaurus. For most documentation there is not much difference to normal Markdown files, but browsing the existing documentation, thus, website sources, you will detect some relevant differences.
For details on front matter, admonitions, etc. you best visit the comprehensive Docusaurus documentation. In here, you will get just some extra hints on customizations we have applied (like extra MDX components, reverse sorting in categories and such).
CMCC Version et al.
For convenience, we maintain the CMCC version information at a central location:
src/ts/context.ts
Having this, on new version approval, you most likely only need to adapt the version information inside there.
Reverse Sorting in Categories
Reverse sorting can be enabled by a custom property in the _category_.json
file, like it is done for the changelog:
{
"label": "Changelog",
"position": 6,
"link": {
"type": "generated-index",
"description": "Overview of changes to CoreMedia GlobalLink Connect Cloud Integration."
},
"customProps": {
"sort": "descending"
}
}
The setting customProps.sort is respected by a corresponding
sidebarItemsGenerator defined in the central documentation configuration
docusaurus.config.ts.
Custom MDX Components
You find custom MDX components at website/src/components and registered in
website/src/theme/MDXComponents.tsx.
For syntax highlighting in MDX enabled files, you may want to use this Visual Studio Code Plugin:
Deprecated
Used to render a Shields.io badge within this documentation to signal deprecations:
<Deprecated
value="2506.0.0-1"
/>
Don't use this API anymore, it is deprecated without replacement.
DocLink
Used to render links to
documentation.coremedia.com
respecting version information as provided by src/ts/context.ts:
<DocLink path="coremedia-en/content/projectExtensions.html">
Blueprint Developer Manual / Project Extensions
</DocLink>
FileList
This is not implemented as MDX Component.
The only usage for now is to auto-generate a list of available license texts for third-party dependency. Its usage is simpler than the implementation:
<FileList directory="./files" exclude={["licenses.xml"]} />
It is implemented as a so-called "Remark plugin", which simulates an MDX Component. It requires to be a plugin instead, because it requires access to the file system for listing the files found.
RepositoryLink
Used to render links to paths within this repository that respect the
version tags as defined in src/ts/context.ts:
<RepositoryLink path=".github/workflows" title="workflows"/>
In its short form, it will just render the path itself as text:
<RepositoryLink path=".github/workflows" />
Since
Used to render a Shields.io badge within this documentation to signal a new API or feature:
<Since
value="2506.0.0-1"
/>
You can now use duration strings instead of just integers interpreted as seconds.