Skip to content

Commit 7996f43

Browse files
m-hulbertclaude
andcommitted
feat(nav): update navigation structure for products
Restructure nav data for all products to use section-based grouping with Getting started sections. Update generateMarkdownFooter test to match the new section structure. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 8df728a commit 7996f43

8 files changed

Lines changed: 190 additions & 162 deletions

File tree

data/onPostBuild/generateMarkdownFooter.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,10 +77,10 @@ describe('generateMarkdownFooter', () => {
7777
expect(setupPage?.sectionKey).toBe('Ably Chat::Concepts');
7878
});
7979

80-
it('should use __root__ section key for top-level pages', () => {
80+
it('should use section key for pages nested in a section', () => {
8181
const pages = flattenNavPages();
8282
const aboutChat = pages.find((p) => p.link === '/docs/chat');
83-
expect(aboutChat?.sectionKey).toBe('Ably Chat::__root__');
83+
expect(aboutChat?.sectionKey).toBe('Ably Chat::Getting started');
8484
});
8585

8686
it('should handle nested sections correctly', () => {

src/data/nav/aitransport.ts

Lines changed: 33 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,30 @@ export default {
99
},
1010
content: [
1111
{
12-
name: 'Overview',
13-
link: '/docs/ai-transport',
14-
index: true,
12+
name: 'Getting started',
13+
pages: [
14+
{
15+
name: 'About AI Transport',
16+
link: '/docs/ai-transport',
17+
index: true,
18+
},
19+
{
20+
name: 'By SDK',
21+
pages: [
22+
{
23+
name: 'Core SDK',
24+
link: '/docs/ai-transport/getting-started/core-sdk',
25+
},
26+
{
27+
name: 'Vercel AI SDK',
28+
link: '/docs/ai-transport/getting-started/vercel-ai-sdk',
29+
},
30+
],
31+
},
32+
],
1533
},
1634
{
17-
name: 'Why AI Transport',
35+
name: 'Why AI Transport?',
1836
pages: [
1937
{
2038
name: 'Overview',
@@ -61,19 +79,6 @@ export default {
6179
},
6280
],
6381
},
64-
{
65-
name: 'Getting started',
66-
pages: [
67-
{
68-
name: 'Core SDK',
69-
link: '/docs/ai-transport/getting-started/core-sdk',
70-
},
71-
{
72-
name: 'Vercel AI SDK',
73-
link: '/docs/ai-transport/getting-started/vercel-ai-sdk',
74-
},
75-
],
76-
},
7782
{
7883
name: 'Frameworks',
7984
pages: [
@@ -153,12 +158,17 @@ export default {
153158
],
154159
},
155160
{
156-
name: 'Going to production',
157-
link: '/docs/ai-transport/going-to-production',
158-
},
159-
{
160-
name: 'Troubleshooting',
161-
link: '/docs/ai-transport/troubleshooting',
161+
name: 'Production',
162+
pages: [
163+
{
164+
name: 'Going to production',
165+
link: '/docs/ai-transport/going-to-production',
166+
},
167+
{
168+
name: 'Troubleshooting',
169+
link: '/docs/ai-transport/troubleshooting',
170+
},
171+
],
162172
},
163173
{
164174
name: 'API reference',

src/data/nav/chat.ts

Lines changed: 42 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -8,50 +8,55 @@ export default {
88
open: 'icon-gui-prod-chat-solid',
99
},
1010
content: [
11-
{
12-
name: 'About Chat',
13-
link: '/docs/chat',
14-
index: true,
15-
},
1611
{
1712
name: 'Getting started',
1813
pages: [
1914
{
20-
name: 'Overview',
21-
link: '/docs/chat/getting-started',
15+
name: 'About Chat',
16+
link: '/docs/chat',
2217
index: true,
2318
},
2419
{
25-
name: 'JavaScript',
26-
link: '/docs/chat/getting-started/javascript',
27-
},
28-
{
29-
name: 'React',
30-
link: '/docs/chat/getting-started/react',
31-
},
32-
{
33-
name: 'React Native',
34-
link: '/docs/chat/getting-started/react-native',
35-
},
36-
{
37-
name: 'Kotlin (Android)',
38-
link: '/docs/chat/getting-started/android',
39-
},
40-
{
41-
name: 'Kotlin (JVM)',
42-
link: '/docs/chat/getting-started/jvm',
43-
},
44-
{
45-
name: 'Swift',
46-
link: '/docs/chat/getting-started/swift',
47-
},
48-
{
49-
name: 'Swift (AsyncSequence)',
50-
link: '/docs/chat/getting-started/swift-async-sequence',
51-
},
52-
{
53-
name: 'React UI Kit',
54-
link: '/docs/chat/getting-started/react-ui-kit',
20+
name: 'By language',
21+
pages: [
22+
{
23+
name: 'Overview',
24+
link: '/docs/chat/getting-started',
25+
index: true,
26+
},
27+
{
28+
name: 'JavaScript',
29+
link: '/docs/chat/getting-started/javascript',
30+
},
31+
{
32+
name: 'React',
33+
link: '/docs/chat/getting-started/react',
34+
},
35+
{
36+
name: 'React Native',
37+
link: '/docs/chat/getting-started/react-native',
38+
},
39+
{
40+
name: 'Kotlin (Android)',
41+
link: '/docs/chat/getting-started/android',
42+
},
43+
{
44+
name: 'Kotlin (JVM)',
45+
link: '/docs/chat/getting-started/jvm',
46+
},
47+
{
48+
name: 'Swift',
49+
link: '/docs/chat/getting-started/swift',
50+
},
51+
{
52+
name: 'Swift (AsyncSequence)',
53+
link: '/docs/chat/getting-started/swift-async-sequence',
54+
},
55+
{
56+
name: 'React UI Kit',
57+
link: '/docs/chat/getting-started/react-ui-kit',
58+
},
59+
],
5560
},
5661
],
5762
},

src/data/nav/liveobjects.ts

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,26 +8,31 @@ export default {
88
open: 'icon-gui-prod-liveobjects-solid',
99
},
1010
content: [
11-
{
12-
name: 'About LiveObjects',
13-
link: '/docs/liveobjects',
14-
index: true,
15-
languages: ['javascript', 'swift', 'java'],
16-
},
1711
{
1812
name: 'Getting started',
1913
pages: [
2014
{
21-
name: 'JavaScript',
22-
link: '/docs/liveobjects/quickstart/javascript',
23-
},
24-
{
25-
name: 'Swift',
26-
link: '/docs/liveobjects/quickstart/swift',
15+
name: 'About LiveObjects',
16+
link: '/docs/liveobjects',
17+
index: true,
18+
languages: ['javascript', 'swift', 'java'],
2719
},
2820
{
29-
name: 'Java',
30-
link: '/docs/liveobjects/quickstart/java',
21+
name: 'By language',
22+
pages: [
23+
{
24+
name: 'JavaScript',
25+
link: '/docs/liveobjects/quickstart/javascript',
26+
},
27+
{
28+
name: 'Swift',
29+
link: '/docs/liveobjects/quickstart/swift',
30+
},
31+
{
32+
name: 'Java',
33+
link: '/docs/liveobjects/quickstart/java',
34+
},
35+
],
3136
},
3237
],
3338
},

src/data/nav/livesync.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,14 @@ export default {
99
},
1010
content: [
1111
{
12-
name: 'About LiveSync',
13-
link: '/docs/livesync',
14-
index: true,
12+
name: 'Getting started',
13+
pages: [
14+
{
15+
name: 'About LiveSync',
16+
link: '/docs/livesync',
17+
index: true,
18+
},
19+
],
1520
},
1621
{
1722
name: 'MongoDB',

src/data/nav/platform.ts

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,14 @@ export default {
99
},
1010
content: [
1111
{
12-
name: 'About Ably',
13-
link: '/docs/platform',
14-
index: true,
12+
name: 'Getting started',
13+
pages: [
14+
{
15+
name: 'About Ably',
16+
link: '/docs/platform',
17+
index: true,
18+
},
19+
],
1520
},
1621
{
1722
name: 'Architecture',

0 commit comments

Comments
 (0)