refactor: use cased URL slugs for navbar sections and reorder right-side links#33
Merged
Conversation
…ide links Renames the docs URL paths to match the navbar label casing (Abstractions, aweXpect, Mockolate, Chronology, Extensions) and swaps the order of the right-side navbar items so Chronology comes before Extensions. Section detection in sectionTheme.ts and the swizzled Logo now matches case-insensitively and lowercases the captured segment, keeping the existing data-section / SECTION_LOGOS keys unchanged.
There was a problem hiding this comment.
Pull request overview
Updates the documentation portal to use cased top-level URL segments that match navbar label casing, and reorders the right-side navbar items.
Changes:
- Renames aggregated docs target subdirectories and Docusaurus doc folder names to cased variants (e.g.,
Abstractions,aweXpect,Mockolate,Extensions,Chronology). - Makes section detection in the swizzled
LogoandsectionThemecase-insensitive and normalizes the captured segment to lowercase to preserve existingdata-section/ logo keys. - Swaps the order of right-side navbar items so Chronology appears before Extensions.
Reviewed changes
Copilot reviewed 8 out of 9 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| Pipeline/Build.Pages.cs | Updates AggregatedSources target subdirectories to the new cased doc roots. |
| Docs/pages/src/theme/Logo/index.tsx | Makes section matching case-insensitive and normalizes to lowercase for logo selection. |
| Docs/pages/src/pages/index.tsx | Updates landing-page links to the new cased routes (and Extensions link). |
| Docs/pages/src/css/custom.css | Updates comment text to reflect the new /Extensions/* casing. |
| Docs/pages/src/clientModules/sectionTheme.ts | Makes section detection case-insensitive and normalizes to lowercase for data-section. |
| Docs/pages/sidebars.ts | Updates autogenerated dirName values to new cased folder names. |
| Docs/pages/docusaurus.config.ts | Reorders right-side navbar items (Chronology before Extensions). |
| Docs/pages/README.md | Updates described aggregation output paths to cased variants (but still contains outdated instructions). |
| .gitignore | Updates ignored aggregated docs directories to new cased names (adds Chronology). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - **`.github/workflows/pages.yml`** (`name: Pages`) - triggered by `repository_dispatch` events of type `extension-documentation-updated-event`. Extension repos use this to ask the site to rebuild after their own docs change, without going through the full CI build. | ||
|
|
||
| Both workflows run the same deploy steps: setup .NET → `./build.sh Pages` (downloads the `Docs/pages/` folder of every extension repo listed in `Pipeline/Build.Pages.cs` into `Docs/pages/docs/extensions/project/<Name>/`) → npm install → docusaurus build → publish to the `gh-pages` branch via [`peaceiris/actions-gh-pages`](https://github.com/peaceiris/actions-gh-pages). | ||
| Both workflows run the same deploy steps: setup .NET → `./build.sh Pages` (downloads the `Docs/pages/` folder of every extension repo listed in `Pipeline/Build.Pages.cs` into `Docs/pages/docs/Extensions/project/<Name>/`) → npm install → docusaurus build → publish to the `gh-pages` branch via [`peaceiris/actions-gh-pages`](https://github.com/peaceiris/actions-gh-pages). |
Comment on lines
42
to
+46
| 1. Add an entry to the `projects` dictionary in [`Pipeline/Build.Pages.cs`](../../Pipeline/Build.Pages.cs): | ||
| ```csharp | ||
| { "Testably.Abstractions.MyExtension", "MyExtension" } | ||
| ``` | ||
| The key is the GitHub repository name under the `Testably` org; the value is the directory under `Docs/pages/docs/extensions/project/`. | ||
| The key is the GitHub repository name under the `Testably` org; the value is the directory under `Docs/pages/docs/Extensions/project/`. |
Comment on lines
87
to
99
| }, | ||
| { | ||
| type: 'docSidebar', | ||
| sidebarId: 'extensionsSidebar', | ||
| sidebarId: 'chronologySidebar', | ||
| position: 'right', | ||
| label: 'Extensions', | ||
| label: 'Chronology', | ||
| }, | ||
| { | ||
| type: 'docSidebar', | ||
| sidebarId: 'chronologySidebar', | ||
| sidebarId: 'extensionsSidebar', | ||
| position: 'right', | ||
| label: 'Chronology', | ||
| label: 'Extensions', | ||
| }, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Renames the docs URL paths to match the navbar label casing (Abstractions, aweXpect, Mockolate, Chronology, Extensions) and swaps the order of the right-side navbar items so Chronology comes before Extensions.
Section detection in sectionTheme.ts and the swizzled Logo now matches case-insensitively and lowercases the captured segment, keeping the existing data-section / SECTION_LOGOS keys unchanged.