Skip to content

Commit a13e201

Browse files
wip: initial idea of sidebar restructure
1 parent 22cce83 commit a13e201

File tree

1 file changed

+218
-29
lines changed

1 file changed

+218
-29
lines changed

astro-docs/sidebar.mts

Lines changed: 218 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2,31 +2,133 @@ import type { StarlightUserConfig } from '@astrojs/starlight/types';
22
import { getPluginItems } from './src/plugins/utils/plugin-mappings';
33

44
export const sidebar: StarlightUserConfig['sidebar'] = [
5+
// ============================================
6+
// 1. LEARN NX (only expanded section)
7+
// ============================================
58
{
6-
label: 'Getting Started',
9+
label: 'Learn Nx',
710
collapsed: false,
8-
autogenerate: { directory: 'getting-started', collapsed: true },
9-
},
10-
{
11-
label: 'Features',
12-
collapsed: false,
13-
autogenerate: { directory: 'features', collapsed: true },
14-
},
15-
{
16-
label: 'Core Guides',
17-
collapsed: true,
18-
autogenerate: { directory: 'guides', collapsed: true },
11+
items: [
12+
// Getting Started - flattened
13+
{ label: 'Why Nx?', link: 'getting-started/intro' },
14+
{ label: 'Installation', link: 'getting-started/installation' },
15+
{
16+
label: 'Start a New Project',
17+
link: 'getting-started/start-new-project',
18+
},
19+
{
20+
label: 'Add to Existing Project',
21+
link: 'getting-started/start-with-existing-project',
22+
},
23+
{ label: 'Editor Setup', link: 'getting-started/editor-setup' },
24+
{ label: 'AI Setup', link: 'getting-started/ai-setup' },
25+
{ label: 'Nx Cloud Intro', link: 'getting-started/nx-cloud' },
26+
{
27+
label: 'Install in Non-JS Repo',
28+
link: 'guides/Installation/install-non-javascript',
29+
},
30+
{
31+
label: 'Update Global Installation',
32+
link: 'guides/Installation/update-global-installation',
33+
},
34+
{
35+
label: 'Tutorials',
36+
collapsed: true,
37+
autogenerate: {
38+
directory: 'getting-started/Tutorials',
39+
collapsed: true,
40+
},
41+
},
42+
{
43+
label: 'Core Concepts',
44+
collapsed: true,
45+
autogenerate: { directory: 'concepts', collapsed: true },
46+
},
47+
],
1948
},
49+
50+
// ============================================
51+
// 2. BUILD WITH NX
52+
// ============================================
2053
{
21-
label: 'Core Concepts',
54+
label: 'Build with Nx',
2255
collapsed: true,
23-
autogenerate: { directory: 'concepts', collapsed: true },
24-
},
25-
{
26-
label: 'Technologies',
27-
collapsed: false,
28-
// manually type the tech routes due to complexity of order and structure
2956
items: [
57+
// --- CORE (Nx-specific features) - FIRST ---
58+
{
59+
label: 'Core',
60+
collapsed: true,
61+
items: [
62+
// Features flattened directly under Core
63+
{ label: 'Run Tasks', link: 'features/run-tasks' },
64+
{ label: 'Cache Task Results', link: 'features/cache-task-results' },
65+
{ label: 'Explore the Graph', link: 'features/explore-graph' },
66+
{ label: 'Generate Code', link: 'features/generate-code' },
67+
{
68+
label: 'Enforce Module Boundaries',
69+
link: 'features/enforce-module-boundaries',
70+
},
71+
{ label: 'Manage Releases', link: 'features/manage-releases' },
72+
{
73+
label: 'Automate Updating Dependencies',
74+
link: 'features/automate-updating-dependencies',
75+
},
76+
{
77+
label: 'Maintain TypeScript Monorepos',
78+
link: 'features/maintain-typescript-monorepos',
79+
},
80+
{ label: 'Enhance AI', link: 'features/enhance-AI' },
81+
{
82+
label: 'CI Basics',
83+
collapsed: true,
84+
items: [
85+
// Links to Scale section for now
86+
{ label: 'CI Features Overview', link: 'features/CI Features' },
87+
],
88+
},
89+
{
90+
label: 'Guides',
91+
collapsed: true,
92+
items: [
93+
{
94+
label: 'Tasks & Caching',
95+
collapsed: true,
96+
autogenerate: {
97+
directory: 'guides/Tasks & Caching',
98+
collapsed: true,
99+
},
100+
},
101+
{
102+
label: 'Nx Release',
103+
collapsed: true,
104+
autogenerate: {
105+
directory: 'guides/Nx Release',
106+
collapsed: true,
107+
},
108+
},
109+
{
110+
label: 'Enforce Module Boundaries',
111+
collapsed: true,
112+
autogenerate: {
113+
directory: 'guides/Enforce Module Boundaries',
114+
collapsed: true,
115+
},
116+
},
117+
{
118+
label: 'Adopting Nx',
119+
collapsed: true,
120+
autogenerate: {
121+
directory: 'guides/Adopting Nx',
122+
collapsed: true,
123+
},
124+
},
125+
{ label: 'CI Deployment', link: 'guides/ci-deployment' },
126+
],
127+
},
128+
],
129+
},
130+
131+
// --- TECHNOLOGIES (flattened from current structure) ---
30132
{
31133
label: 'TypeScript',
32134
collapsed: true,
@@ -226,24 +328,111 @@ export const sidebar: StarlightUserConfig['sidebar'] = [
226328
},
227329
],
228330
},
331+
332+
// ============================================
333+
// 3. SCALE WITH NX
334+
// ============================================
229335
{
230-
label: 'Enterprise',
336+
label: 'Scale with Nx',
231337
collapsed: true,
232-
autogenerate: { directory: 'enterprise', collapsed: true },
338+
items: [
339+
{
340+
label: 'Nx Cloud',
341+
collapsed: true,
342+
autogenerate: { directory: 'guides/Nx Cloud', collapsed: true },
343+
},
344+
{
345+
label: 'CI Features',
346+
collapsed: true,
347+
autogenerate: { directory: 'features/CI Features', collapsed: true },
348+
},
349+
{
350+
label: 'Nx Console',
351+
collapsed: true,
352+
autogenerate: { directory: 'guides/Nx Console', collapsed: true },
353+
},
354+
{
355+
label: 'Enterprise',
356+
collapsed: true,
357+
autogenerate: { directory: 'enterprise', collapsed: true },
358+
},
359+
],
233360
},
361+
362+
// ============================================
363+
// 4. EXTEND NX
364+
// ============================================
234365
{
235-
label: 'Extending Nx',
366+
label: 'Extend Nx',
236367
collapsed: true,
237368
autogenerate: { directory: 'extending-nx', collapsed: true },
238369
},
370+
371+
// ============================================
372+
// 5. REFERENCE
373+
// ============================================
239374
{
240375
label: 'Reference',
241-
collapsed: false,
242-
autogenerate: { directory: 'reference', collapsed: true },
243-
},
244-
{
245-
label: 'Troubleshooting',
246-
collapsed: false,
247-
autogenerate: { directory: 'troubleshooting', collapsed: true },
376+
collapsed: true,
377+
items: [
378+
// Main reference content
379+
{ label: 'nx.json', link: 'reference/nx-json' },
380+
{
381+
label: 'Project Configuration',
382+
link: 'reference/project-configuration',
383+
},
384+
{ label: 'Inputs', link: 'reference/inputs' },
385+
{
386+
label: 'Environment Variables',
387+
link: 'reference/environment-variables',
388+
},
389+
{ label: 'Glossary', link: 'reference/glossary' },
390+
{ label: '.nxignore', link: 'reference/nxignore' },
391+
{ label: 'Releases', link: 'reference/releases' },
392+
{ label: 'Nx MCP', link: 'reference/nx-mcp' },
393+
{ label: 'Nx Console Settings', link: 'reference/nx-console-settings' },
394+
{ label: 'Nx Cloud CLI', link: 'reference/nx-cloud-cli' },
395+
{
396+
label: 'Node/TypeScript Compatibility',
397+
link: 'reference/nodejs-typescript-compatibility',
398+
},
399+
{
400+
label: 'Nx Cloud',
401+
collapsed: true,
402+
autogenerate: { directory: 'reference/Nx Cloud', collapsed: true },
403+
},
404+
{
405+
label: 'Conformance',
406+
collapsed: true,
407+
autogenerate: { directory: 'reference/Conformance', collapsed: true },
408+
},
409+
{
410+
label: 'Owners',
411+
collapsed: true,
412+
autogenerate: { directory: 'reference/Owners', collapsed: true },
413+
},
414+
{
415+
label: 'Benchmarks',
416+
collapsed: true,
417+
autogenerate: { directory: 'reference/Benchmarks', collapsed: true },
418+
},
419+
{
420+
label: 'Deprecated',
421+
collapsed: true,
422+
autogenerate: { directory: 'reference/Deprecated', collapsed: true },
423+
},
424+
// Moved from guides
425+
{
426+
label: 'Tips & Tricks',
427+
collapsed: true,
428+
autogenerate: { directory: 'guides/Tips-n-Tricks', collapsed: true },
429+
},
430+
// Moved from top-level
431+
{
432+
label: 'Troubleshooting',
433+
collapsed: true,
434+
autogenerate: { directory: 'troubleshooting', collapsed: true },
435+
},
436+
],
248437
},
249438
];

0 commit comments

Comments
 (0)