Skip to main content

Docusaurus config setup

After you have created the folder structure in Obsidian its time to adjust the Docusaurus settings to support this structure.

Open your repo folder with VS Code

Open the repository folder with VSCode or any other IDE.

In your website Folder search for the file docusaurus.config.js

sidebar.js

Change from this:

const sidebars = {
// By default, Docusaurus generates a sidebar from the docs folder structure
tutorialSidebar: [{type: 'autogenerated', dirName: '.'}],

// But you can create a sidebar manually
/*
tutorialSidebar: [
'intro',
'hello',
{
type: 'category',
label: 'Tutorial',
items: ['tutorial-basics/create-a-document'],
},
],
*/
};

To your sidebar structure

const sidebars = {
sidebar1: [{type: 'autogenerated', dirName: 'sidebar1'}],
sidebar2: [{type: 'autogenerated', dirName: 'sidebar2'}],
};

docusaurus.config.js

Multiple Languages

Search for line:

i18n: {
defaultLocale: 'en',
locales: ['en'],
},

Adjust to your languages, e.g.:

i18n: {
defaultLocale: 'en',
locales: ['en', 'de'],
},

Theme Config

Search for themeConfig:

themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({
// Replace with your project's social card
image: 'img/docusaurus-social-card.jpg',
navbar: {
title: 'My Site',
logo: {
alt: 'My Site Logo',
src: 'img/logo.svg',
},
items: [
{
type: 'docSidebar',
sidebarId: 'tutorialSidebar',
position: 'left',
label: 'Tutorial',
},
{to: '/blog', label: 'Blog', position: 'left'},
{
href: 'https://github.com/facebook/docusaurus',
label: 'GitHub',
position: 'right',
},
],
},
...

Adjust the items to your structure:

        items: [
{
type: 'docSidebar',
sidebarId: 'sidebar1', // <- from sidebar.js
position: 'left',
label: 'Sidebar 1',
},
{
type: 'docSidebar',
sidebarId: 'sidebar2', // <- from sidebar.js
position: 'left',
label: 'Sidebar 2',
},
{to: '/blog', label: 'Blog', position: 'left'},
{to: '/second-blog', label: 'Second Blog', position: 'left'},
],

Multiple Blogs

in the themeConfig Object add or adjust your plugins :

        plugins: [
[
'@docusaurus/plugin-content-blog',
{
id: 'second-blog',
routeBasePath: 'second-blog',
path: './second-blog__blog',
},
],
],