Skip to content

Commit e18d4a7

Browse files
committed
Generate docs sidebar automatically
Signed-off-by: Robert Detjens <github@detjens.dev>
1 parent c05ff3f commit e18d4a7

File tree

3 files changed

+370
-30
lines changed

3 files changed

+370
-30
lines changed

docs/.vitepress/config.mts

Lines changed: 13 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { defineConfig } from "vitepress";
2+
import { generateSidebar } from "vitepress-sidebar";
23

34
// https://vitepress.dev/reference/site-config
45
export default defineConfig({
@@ -11,35 +12,18 @@ export default defineConfig({
1112
// { text: "Examples", link: "/markdown-examples" },
1213
],
1314

14-
sidebar: [
15-
{
16-
text: "Guides",
17-
items: [
18-
{ text: "Deployment Quickstart", link: "for-sysadmins/quickstart" },
19-
{ text: "Add new challenge", link: "for-authors/quickstart" },
20-
],
21-
},
22-
23-
{
24-
text: "Infra Setup",
25-
items: [
26-
{ text: "Quickstart", link: "/for-sysadmins/quickstart" },
27-
{ text: "Install", link: "/for-sysadmins/quickstart" },
28-
{ text: "Config Reference", link: "/for-sysadmins/config" },
29-
{ text: "Architecture", link: "/for-sysadmins/architecture" },
30-
],
31-
},
32-
{
33-
text: "For Authors",
34-
items: [
35-
{ text: "Challenge Quickstart", link: "/for-authors/quickstart" },
36-
{
37-
text: "Challenge Config Reference",
38-
link: "/for-authors/challenge-config",
39-
},
40-
],
41-
},
42-
],
15+
// auto generate sidebar from directory structure, via vitepress-sidebar
16+
sidebar: generateSidebar({
17+
documentRootPath: "./",
18+
// pull title from markdown not filename
19+
useTitleFromFileHeading: true,
20+
useTitleFromFrontmatter: true,
21+
keepMarkdownSyntaxFromTitle: true,
22+
// transform name to sentence case
23+
hyphenToSpace: true,
24+
underscoreToSpace: true,
25+
capitalizeEachWords: true,
26+
}),
4327

4428
socialLinks: [
4529
{ icon: "github", link: "https://github.com/osusec/beavercds-ng" },

docs/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
"private": true,
44
"type": "module",
55
"devDependencies": {
6-
"vitepress": "1.6.3"
6+
"vitepress": "1.6.3",
7+
"vitepress-sidebar": "^1.31.1"
78
},
89
"scripts": {
910
"docs:dev": "vitepress dev",

0 commit comments

Comments
 (0)