Skip to content

Commit d95a68d

Browse files
committed
Added section for user guide and deep dive
1 parent 323a879 commit d95a68d

File tree

4 files changed

+91
-64
lines changed

4 files changed

+91
-64
lines changed

landing/app/docs/[slug]/page.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import type { Metadata } from 'next'
66
import { docsConfig } from '../docs-config'
77

88
export function generateStaticParams() {
9-
return docsConfig.map(doc => ({ slug: doc.slug }))
9+
return docsConfig.flatMap(section => section.items.map(doc => ({ slug: doc.slug })))
1010
}
1111

1212
export async function generateMetadata({ params }: { params: { slug: string } }): Promise<Metadata> {

landing/app/docs/docs-config.ts

Lines changed: 50 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -3,39 +3,56 @@ export interface DocItem {
33
slug: string
44
}
55

6-
export const docsConfig: DocItem[] = [
7-
{
8-
label: 'Install',
9-
slug: 'install',
10-
},
11-
{
12-
label: 'Configuration',
13-
slug: 'configuration',
14-
},
15-
{
16-
label: 'S3/Folder Browser',
17-
slug: 'folder-browser',
18-
},
19-
{
20-
label: 'Database Browser',
21-
slug: 'database-browser',
22-
},
23-
{
24-
label: 'Table Viewer',
25-
slug: 'table-viewer',
26-
},
27-
{
28-
label: 'Exploratory Data Analysis',
29-
slug: 'exploratory-data-analysis',
30-
},
31-
{
32-
label: 'Embedding',
33-
slug: 'embedding',
34-
},
6+
export interface DocSection {
7+
title: string
8+
items: DocItem[]
9+
}
3510

36-
{
37-
label: 'Visualization',
38-
slug: 'visualization',
11+
export const docsConfig: DocSection[] = [
12+
{
13+
title: 'User Guide',
14+
items: [
15+
{
16+
label: 'Install',
17+
slug: 'install',
18+
},
19+
{
20+
label: 'Configuration',
21+
slug: 'configuration',
22+
},
23+
{
24+
label: 'S3/Folder Browser',
25+
slug: 'folder-browser',
26+
},
27+
{
28+
label: 'Database Browser',
29+
slug: 'database-browser',
30+
},
31+
{
32+
label: 'Table Viewer',
33+
slug: 'table-viewer',
34+
},
35+
{
36+
label: 'Exploratory Data Analysis',
37+
slug: 'exploratory-data-analysis',
38+
},
39+
{
40+
label: 'Embedding',
41+
slug: 'embedding',
42+
},
43+
{
44+
label: 'Visualization',
45+
slug: 'visualization',
46+
},
47+
],
48+
},
49+
{
50+
title: 'Deep Dive',
51+
items: [
52+
{
53+
label: 'Authentication',
54+
slug: 'authentication',
55+
},
56+
],
3957
},
40-
4158
]

landing/app/docs/layout.tsx

Lines changed: 37 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ export default function DocsLayout({
2222
// Remove trailing slash and get the last segment
2323
const pathSegments = pathname.replace(/\/$/, '').split('/')
2424
const currentSlug = pathSegments[pathSegments.length - 1]
25-
const currentDoc = docsConfig.find(doc => doc.slug === currentSlug)
25+
const allDocs = docsConfig.flatMap(section => section.items)
26+
const currentDoc = allDocs.find(doc => doc.slug === currentSlug)
2627
const pageTitle = currentDoc ? currentDoc.label : 'Documentation'
2728

2829
return (
@@ -51,35 +52,41 @@ export default function DocsLayout({
5152
borderRadius="xl"
5253
p={4}
5354
>
54-
<Box
55-
fontSize="sm"
56-
fontWeight="bold"
57-
mb={3}
58-
color="gray.900"
59-
_dark={{ color: 'white' }}
60-
>
61-
Table of Contents
62-
</Box>
63-
<VStack align="stretch" spacing={2}>
64-
{docsConfig.map((item) => (
65-
<Link
66-
key={item.slug}
67-
as={NextLink}
68-
href={`/docs/${item.slug}`}
69-
fontSize="sm"
70-
color={currentSlug === item.slug ? 'primary.500' : 'gray.600'}
71-
_dark={{
72-
color: currentSlug === item.slug ? 'primary.300' : 'gray.400'
73-
}}
74-
_hover={{
75-
color: 'primary.500',
76-
_dark: { color: 'primary.300' }
77-
}}
78-
transition="color 0.2s"
79-
fontWeight={currentSlug === item.slug ? 'semibold' : 'normal'}
80-
>
81-
{item.label}
82-
</Link>
55+
<VStack align="stretch" spacing={4}>
56+
{docsConfig.map((section) => (
57+
<Box key={section.title}>
58+
<Box
59+
fontSize="sm"
60+
fontWeight="bold"
61+
mb={2}
62+
color="gray.900"
63+
_dark={{ color: 'white' }}
64+
>
65+
{section.title}
66+
</Box>
67+
<VStack align="stretch" spacing={1} pl={2}>
68+
{section.items.map((item) => (
69+
<Link
70+
key={item.slug}
71+
as={NextLink}
72+
href={`/docs/${item.slug}`}
73+
fontSize="sm"
74+
color={currentSlug === item.slug ? 'primary.500' : 'gray.600'}
75+
_dark={{
76+
color: currentSlug === item.slug ? 'primary.300' : 'gray.400'
77+
}}
78+
_hover={{
79+
color: 'primary.500',
80+
_dark: { color: 'primary.300' }
81+
}}
82+
transition="color 0.2s"
83+
fontWeight={currentSlug === item.slug ? 'semibold' : 'normal'}
84+
>
85+
{item.label}
86+
</Link>
87+
))}
88+
</VStack>
89+
</Box>
8390
))}
8491
</VStack>
8592
</Box>
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Authentication
2+
3+
This page is under construction.

0 commit comments

Comments
 (0)