11import { defineConfig } from "vitepress" ;
2+ import { generateSidebar } from "vitepress-sidebar" ;
23
34// https://vitepress.dev/reference/site-config
45export 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" } ,
0 commit comments