2022-09-02 05:52:42 -04:00
// @ts-check
// Note: type annotations allow type checking and IDEs autocompletion
2023-05-24 07:30:14 -04:00
const lightCodeTheme = require ( 'prism-react-renderer' ) . themes . github ;
const darkCodeTheme = require ( 'prism-react-renderer' ) . themes . dracula ;
2022-09-02 05:52:42 -04:00
/** @type {import('@docusaurus/types').Config} */
async function createConfig ( ) {
return {
title : 'Constellation' ,
tagline : 'Constellation: The world\'s most secure Kubernetes' ,
url : 'https://constellation-docs.netlify.app' ,
baseUrl : '/constellation/' ,
onBrokenLinks : 'throw' ,
2023-11-23 10:30:01 -05:00
onBrokenMarkdownLinks : 'throw' ,
2024-08-23 07:03:38 -04:00
onBrokenAnchors : 'throw' ,
2022-09-02 05:52:42 -04:00
favicon : 'img/favicon.ico' ,
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
organizationName : 'Edgeless Systems' , // Usually your GitHub org/user name.
projectName : 'Constellation' , // Usually your repo name.
2023-06-30 08:42:55 -04:00
// scripts
scripts : [
{ src : 'https://plausible.io/js/plausible.js' , async : true , defer : true , 'data-domain' : 'docs.edgeless.systems' } ,
{ id : "Cookiebot" , src : "https://consent.cookiebot.com/uc.js" , "data-cbid" : "a0cc864f-0b67-49be-8d65-9ed354de2ee6" , "data-blockingmode" : "auto" } ,
{ id : "CookieDeclaration" , src : "https://consent.cookiebot.com/a0cc864f-0b67-49be-8d65-9ed354de2ee6/cd.js" }
] ,
2022-11-04 09:15:34 -04:00
2022-09-02 05:52:42 -04:00
// Even if you don't use internalization, you can use this field to set useful
// metadata like html lang. For example, if your site is Chinese, you may want
// to replace "en" with "zh-Hans".
i18n : {
defaultLocale : 'en' ,
locales : [ 'en' ] ,
} ,
2023-09-05 05:24:20 -04:00
// mermaid
markdown : {
mermaid : true ,
} ,
themes : [ '@docusaurus/theme-mermaid' ] ,
2022-09-02 05:52:42 -04:00
presets : [
[
'classic' ,
/** @type {import('@docusaurus/preset-classic').Options} */
( {
docs : {
sidebarPath : require . resolve ( './sidebars.js' ) ,
// sidebarPath: 'sidebars.js',
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
2022-09-10 07:44:17 -04:00
editUrl : 'https://github.com/edgelesssys/constellation/edit/main/docs' ,
2022-09-02 05:52:42 -04:00
routeBasePath : "/"
} ,
blog : false ,
theme : {
customCss : require . resolve ( './src/css/custom.css' ) ,
} ,
2023-06-30 08:42:55 -04:00
gtag : {
trackingID : 'G-3DVYB2CHLG' ,
anonymizeIP : true ,
}
2022-09-02 05:52:42 -04:00
} ) ,
] ,
] ,
themeConfig :
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
( {
navbar : {
hideOnScroll : false ,
logo : {
alt : 'Constellation Logo' ,
src : 'img/logos/constellation_oneline.svg' ,
} ,
items : [
// left
// Running docs only mode no need for a link here
// {
// type: 'doc',
// docId: 'intro',
// position: 'left',
// label: 'Docs',
// },
// right
{
type : 'docsVersionDropdown' ,
position : 'right' ,
} ,
{
href : 'https://github.com/edgelesssys/constellation' ,
position : 'right' ,
className : 'header-github-link' ,
} ,
] ,
} ,
colorMode : {
defaultMode : 'light' ,
disableSwitch : true ,
respectPrefersColorScheme : false ,
} ,
announcementBar : {
content :
2022-09-12 12:35:12 -04:00
'If you like Constellation, give it a star on <a target="_blank" rel="noopener noreferrer" href="https://github.com/edgelesssys/constellation">GitHub</a> ⭐️' ,
backgroundColor : '#E7E6E6'
2022-09-02 05:52:42 -04:00
} ,
footer : {
style : 'dark' ,
links : [
{
title : 'Learn' ,
items : [
{
label : 'Confidential Kubernetes' ,
to : '/overview/confidential-kubernetes' ,
} ,
{
label : 'Install' ,
to : '/getting-started/install' ,
} ,
{
label : 'First steps' ,
to : '/getting-started/first-steps' ,
} ,
] ,
} ,
{
title : 'Community' ,
items : [
{
label : 'GitHub' ,
href : 'https://github.com/edgelesssys/constellation' ,
} ,
{
label : 'Discord' ,
href : 'https://discord.gg/rH8QTH56JN' ,
} ,
{
label : 'Newsletter' ,
2023-11-23 10:30:01 -05:00
href : 'https://www.edgeless.systems/#footer'
2022-09-02 05:52:42 -04:00
} ,
] ,
} ,
{
title : 'Social' ,
items : [
{
label : 'Blog' ,
2023-10-20 05:21:25 -04:00
href : 'https://www.edgeless.systems/blog/' ,
2022-09-02 05:52:42 -04:00
} ,
{
label : 'Twitter' ,
href : 'https://twitter.com/EdgelessSystems' ,
} ,
{
label : 'LinkedIn' ,
href : 'https://www.linkedin.com/company/edgeless-systems/' ,
} ,
{
label : 'Youtube' ,
href : 'https://www.youtube.com/channel/UCOOInN0sCv6icUesisYIDeA' ,
} ,
] ,
} ,
2023-06-30 08:42:55 -04:00
{
title : 'Company' ,
items : [
{
label : 'Imprint' ,
2023-11-23 10:30:01 -05:00
href : 'https://www.edgeless.systems/imprint/' ,
2023-06-30 08:42:55 -04:00
} ,
{
label : 'Privacy Policy' ,
2023-11-23 10:30:01 -05:00
href : 'https://www.edgeless.systems/privacy/' ,
2023-06-30 08:42:55 -04:00
} ,
{
html : ` <a href="javascript: Cookiebot.renew()" class="footer__link-item">Cookie Settings</a> `
} ,
{
label : 'Contact Us' ,
2023-11-23 10:30:01 -05:00
href : 'https://www.edgeless.systems/contact-us/' ,
2023-06-30 08:42:55 -04:00
} ,
] ,
} ,
2022-09-02 05:52:42 -04:00
] ,
2022-09-12 12:35:12 -04:00
copyright : ` Copyright © ${ new Date ( ) . getFullYear ( ) } Edgeless Systems ` ,
2022-09-02 05:52:42 -04:00
} ,
prism : {
theme : lightCodeTheme ,
darkTheme : darkCodeTheme ,
2022-09-12 11:24:45 -04:00
additionalLanguages : [ 'shell-session' ] ,
2022-09-02 05:52:42 -04:00
} ,
2023-09-05 05:24:20 -04:00
mermaid : {
theme : { light : 'base' , dark : 'base' } ,
options : {
themeVariables : {
// general
fontFamily : '"Open Sans", sans-serif' ,
primaryColor : '#90FF99' , // edgeless green
primaryTextColor : '#000000' ,
secondaryColor : '#A5A5A5' , // edgeless grey
secondaryTextColor : '#000000' ,
tertiaryColor : '#E7E6E6' , // edgeless light grey
tertiaryTextColor : '#000000' ,
// flowchart
clusterBorder : '#A5A5A5' ,
clusterBkg : '#ffffff' ,
edgeLabelBackground : '#ffffff' ,
// sequence diagram
activationBorderColor : '#000000' ,
actorBorder : '#A5A5A5' ,
actorFontFamily : '"Open Sans", sans-serif' , // not released by mermaid yet
noteBkgColor : '#8B04DD' , // edgeless purple
noteTextColor : '#ffffff' ,
} ,
startOnLoad : true ,
} ,
} ,
2022-09-02 05:52:42 -04:00
} ) ,
2022-09-07 11:57:45 -04:00
plugins : [
[
require . resolve ( "@cmfcmf/docusaurus-search-local" ) ,
{
// whether to index docs pages
indexDocs : true ,
// Whether to also index the titles of the parent categories in the sidebar of a doc page.
// 0 disables this feature.
// 1 indexes the direct parent category in the sidebar of a doc page
// 2 indexes up to two nested parent categories of a doc page
// 3...
//
// Do _not_ use Infinity, the value must be a JSON-serializable integer.
indexDocSidebarParentCategories : 0 ,
// whether to index blog pages
indexBlog : false ,
// whether to index static pages
// /404.html is never indexed
indexPages : false ,
// language of your documentation, see next section
language : "en" ,
// setting this to "none" will prevent the default CSS to be included. The default CSS
// comes from autocomplete-theme-classic, which you can read more about here:
// https://www.algolia.com/doc/ui-libraries/autocomplete/api-reference/autocomplete-theme-classic/
// When you want to overwrite CSS variables defined by the default theme, make sure to suffix your
// overwrites with `!important`, because they might otherwise not be applied as expected. See the
// following comment for more information: https://github.com/cmfcmf/docusaurus-search-local/issues/107#issuecomment-1119831938.
style : undefined ,
// The maximum number of search results shown to the user. This does _not_ affect performance of
// searches, but simply does not display additional search results that have been found.
maxSearchResults : 8 ,
// lunr.js-specific settings
lunr : {
// When indexing your documents, their content is split into "tokens".
// Text entered into the search box is also tokenized.
// This setting configures the separator used to determine where to split the text into tokens.
// By default, it splits the text at whitespace and dashes.
//
// Note: Does not work for "ja" and "th" languages, since these use a different tokenizer.
tokenizerSeparator : /[\s\-]+/ ,
// https://lunrjs.com/guides/customising.html#similarity-tuning
//
// This parameter controls the importance given to the length of a document and its fields. This
// value must be between 0 and 1, and by default it has a value of 0.75. Reducing this value
// reduces the effect of different length documents on a term’ s importance to that document.
b : 0.75 ,
// This controls how quickly the boost given by a common word reaches saturation. Increasing it
// will slow down the rate of saturation and lower values result in quicker saturation. The
// default value is 1.2. If the collection of documents being indexed have high occurrences
// of words that are not covered by a stop word filter, these words can quickly dominate any
// similarity calculation. In these cases, this value can be reduced to get more balanced results.
k1 : 1.2 ,
// By default, we rank pages where the search term appears in the title higher than pages where
// the search term appears in just the text. This is done by "boosting" title matches with a
// higher value than content matches. The concrete boosting behavior can be controlled by changing
// the following settings.
titleBoost : 5 ,
contentBoost : 1 ,
tagsBoost : 3 ,
parentCategoriesBoost : 2 , // Only used when indexDocSidebarParentCategories > 0
}
} ,
]
]
2022-09-10 07:44:17 -04:00
}
2022-09-02 05:52:42 -04:00
} ;
module . exports = createConfig ;