Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR introduces a full GitHub Pages documentation setup (MkDocs + Material), reorganizes the docs from Docs/ to docs/, and adds tooling to keep a GitHub Wiki in sync with the docs.
Changes:
- Add MkDocs configuration (
mkdocs.yml), Python requirements, and workflows to build, validate, and deploy the docs site to GitHub Pages. - Introduce Node-based tooling (
scripts/wiki) plus tests to transformdocs/content into GitHub Wiki pages and generate a wiki sidebar. - Restructure and rewrite documentation under
docs/(including navigation, links, examples, and architecture pages), updatingREADME.mdand tests to point at the new structure.
Reviewed changes
Copilot reviewed 149 out of 157 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| scripts/wiki/transform-docs-to-wiki.js.meta | Unity .meta for the new docs→wiki transform script. |
| scripts/wiki/transform-docs-to-wiki.js | Implements docs→GitHub Wiki transformation (link rewriting, image path mapping, code-block-aware processing, and file traversal); note: current docsPathToWikiPage behavior for ../index.md does not match the tests’ expectation. |
| scripts/wiki/generate-wiki-sidebar.js.meta | Unity .meta for the wiki sidebar generator script. |
| scripts/wiki/generate-wiki-sidebar.js | Generates _Sidebar.md from a hard-coded nav structure, marking missing pages as “coming soon” and adding external links. |
| scripts/wiki/tests/transform.test.js.meta | Unity .meta for the Node transform tests. |
| scripts/wiki/tests/transform.test.js | Jest-style test suite covering link classification, code block tracking, line transformation, and file transformation; contains an expectation for [Back](../index.md) that currently disagrees with docsPathToWikiPage('../index.md'). |
| scripts/wiki/tests.meta | Unity .meta for the __tests__ folder. |
| scripts/wiki.meta | Unity .meta for the new scripts/wiki folder. |
| requirements-docs.txt.meta | Unity .meta for the new documentation Python requirements file. |
| requirements-docs.txt | Adds pinned MkDocs + Material + plugins and markdown extensions as the Python requirements for building docs. |
| package.json | Updates documentationUrl to the published GitHub Pages URL. |
| mkdocs.yml.meta | Unity .meta for MkDocs configuration. |
| mkdocs.yml | Full MkDocs Material config: theme, plugins, markdown extensions, extra CSS/JS, and nav mapped to the new docs/ tree. |
| docs/stylesheets/extra.css.meta | Unity .meta for extra CSS in docs. |
| docs/stylesheets.meta | Unity .meta for the docs/stylesheets folder. |
| docs/reference/troubleshooting.md.meta | Unity .meta for the Troubleshooting doc. |
| docs/reference/troubleshooting.md | Rewrites internal links to match the new structure and externalizes sample links to GitHub; groups related docs with clearer bullets. |
| docs/reference/reference.md.meta | Unity .meta for the new practical API reference. |
| docs/reference/reference.md | New practical API reference page summarizing registrations, emit helpers, interceptors, diagnostics, and key Unity bridge types with links to source files. |
| docs/reference/quick-reference.md.meta | Unity .meta for Quick Reference. |
| docs/reference/quick-reference.md | Normalizes headings, updates internal links to the new paths, clarifies tips and interceptor example (RegisterBroadcastInterceptor instead of targeted). |
| docs/reference/helpers.md.meta | Unity .meta for Helpers reference (content not changed in this diff). |
| docs/reference/glossary.md.meta | Unity .meta for Glossary. |
| docs/reference/glossary.md | Updates nav links and cross-references to point at the new docs/ locations and GitHub sample URLs. |
| docs/reference/faq.md.meta | Unity .meta for FAQ. |
| docs/reference/faq.md | Updates nav links, reorganizes related documentation section with bold group headings, and points to new concepts/guides pages. |
| docs/reference/compatibility.md.meta | Unity .meta for Compatibility. |
| docs/reference/compatibility.md | Adjusts references to Patterns and Integrations docs to the new paths under docs/guides and docs/integrations. |
| docs/reference.meta | Unity .meta for docs/reference folder. |
| docs/javascripts/mermaid-config.js.meta | Unity .meta for Mermaid configuration script. |
| docs/javascripts/mermaid-config.js | Theme-aware Mermaid integration for MkDocs Material, handling light/dark schemes, debounced re-render on theme change, and preserving diagram source for re-renders. |
| docs/javascripts/csharp-highlight.js | Post-processes Pygments C# output to add semantic CSS classes (type/method/param/var) based on simple heuristics to improve C# highlighting. |
| docs/javascripts.meta | Unity .meta for docs/javascripts folder. |
| docs/integrations/zenject.md.meta | Unity .meta for Zenject integration doc. |
| docs/integrations/zenject.md | Updates “back” and “next steps” links to use the new integrations index and getting-started index. |
| docs/integrations/vcontainer.md.meta | Unity .meta for VContainer integration doc. |
| docs/integrations/vcontainer.md | Same structure as Zenject: back link to integrations index and updated next-step links. |
| docs/integrations/reflex.md.meta | Unity .meta for Reflex integration doc. |
| docs/integrations/reflex.md | Aligns navigation to the new docs structure (integrations index + getting-started index). |
| docs/integrations/index.md | New index page explaining DI integrations (VContainer, Zenject, Reflex) and common patterns. |
| docs/integrations.meta | Unity .meta for docs/integrations folder. |
| docs/index.md.meta | Unity .meta for docs home. |
| docs/index.md | New MkDocs home page with CTA buttons, quick links, installation snippet, and a basic example. |
| docs/hooks.py.meta | Unity .meta for MkDocs hooks. |
| docs/hooks.py | MkDocs hook that rewrites source links (Runtime/, Tests/, Editor/, Samples~/) to blob/tree GitHub URLs, skipping links inside code blocks and inline code. |
| docs/guides/unity-integration.md.meta | Unity .meta for Unity Integration guide. |
| docs/guides/unity-integration.md | Normalizes headings, updates references to Quick Start/Patterns/Diagnostics, and clarifies cross-links to the new docs structure. |
| docs/guides/testing.md.meta | Unity .meta for Testing guide. |
| docs/guides/testing.md | Updates nav links (index, patterns, runtime configuration) and “See Also” section to new guide locations. |
| docs/guides/patterns.md.meta | Unity .meta for Patterns guide. |
| docs/guides/patterns.md | Updates sample links to GitHub, fixes interceptor examples to use broadcast where intended, and aligns cross-links with new architecture and examples pages. |
| docs/guides/migration-guide.md.meta | Unity .meta for Migration guide. |
| docs/guides/migration-guide.md | Updates links to Visual Guide, FAQ, Patterns to the reorganized docs tree. |
| docs/guides/diagnostics.md.meta | Unity .meta for Diagnostics guide. |
| docs/guides/diagnostics.md | New, more detailed diagnostics guide (diagnostics targets, registration logging, performance considerations, and editor integration). |
| docs/guides/advanced.md.meta | Unity .meta for Advanced guide. |
| docs/guides/advanced.md | Cleans up references to Interceptors & Ordering and Diagnostics to point at the new concept/guide paths. |
| docs/guides.meta | Unity .meta for docs/guides folder. |
| docs/getting-started/visual-guide.md.meta | Unity .meta for Visual Guide (content unchanged in this diff). |
| docs/getting-started/quick-start.md.meta | Unity .meta for Quick Start. |
| docs/getting-started/quick-start.md | Rewrites headings, link text, and cross-links; updates some examples (e.g., using RegisterComponentBroadcast where appropriate) and simplifies “Do’s/Don'ts” bullets. |
| docs/getting-started/overview.md.meta | Unity .meta for Overview. |
| docs/getting-started/overview.md | Adjusts links to new architecture docs, modernizes bullets (using ->), and retargets references to install/compatibility pages. |
| docs/getting-started/install.md.meta | Unity .meta for Install guide. |
| docs/getting-started/install.md | New install guide with OpenUPM, git URL, NPM registry, release packages, and manual manifest instructions. |
| docs/getting-started/index.md.meta | Unity .meta for getting-started index (content not in diff). |
| docs/getting-started/getting-started.md.meta | Unity .meta for main Getting Started guide. |
| docs/getting-started/getting-started.md | Updates nav, headings, decision text, and cross-links to use the new concept paths and troubleshooting/FAQ locations. |
| docs/getting-started.meta | Unity .meta for docs/getting-started folder. |
| docs/examples/end-to-end.md.meta | Unity .meta for End-to-End example. |
| docs/examples/end-to-end.md | Adjusts link to Targeting & Context to the new concepts location. |
| docs/examples/end-to-end-scene-transitions.md.meta | Unity .meta for scene transitions example. |
| docs/examples/end-to-end-scene-transitions.md | New end-to-end scene transitions + overlay pause example using local buses and global overlay. |
| docs/examples.meta | Unity .meta for docs/examples folder. |
| docs/concepts/targeting-and-context.md.meta | Unity .meta for targeting concepts doc. |
| docs/concepts/targeting-and-context.md | Updates “See also” links to new advanced/concepts/reference docs. |
| docs/concepts/message-types.md.meta | Unity .meta for message types doc. |
| docs/concepts/message-types.md | Updates nav, refines the Mermaid diagram styling config, and adjusts links (Patterns, Listening Patterns, Quick Start, samples). |
| docs/concepts/listening-patterns.md.meta | Unity .meta for Listening Patterns doc. |
| docs/concepts/listening-patterns.md | Normalizes headings and updates diagnostics links to the new guide. |
| docs/concepts/interceptors-and-ordering.md.meta | Unity .meta for Interceptors & Ordering doc. |
| docs/concepts/interceptors-and-ordering.md | Updates links to GitHub test files, refactors Mermaid diagrams to use generic theme config, and re-headings some sections. |
| docs/concepts.meta | Unity .meta for docs/concepts folder. |
| docs/architecture/performance.md.meta | Unity .meta for Performance doc. |
| docs/architecture/performance.md | Points benchmark references to GitHub URLs and to design-and-architecture.md performance section. |
| docs/architecture/design-and-architecture.md.meta | Unity .meta for Design & Architecture. |
| docs/architecture/design-and-architecture.md | Refactors architecture diagram to use neutral Mermaid theme and classDefs; updates related-doc links to new concept/guide paths. |
| docs/architecture/comparisons.md.meta | Unity .meta for Comparisons doc. |
| docs/architecture/comparisons.md | Updates benchmark links to GitHub, integrates new DI and SOA references, and adjusts “See also” section to new concept/guides docs. |
| docs/architecture.meta | Unity .meta for docs/architecture folder. |
| docs/advanced/string-messages.md.meta | Unity .meta for String Messages doc. |
| docs/advanced/string-messages.md | Updates “See also” references to message-types and diagnostics in the new structure. |
| docs/advanced/runtime-configuration.md.meta | Unity .meta for Runtime Configuration doc. |
| docs/advanced/runtime-configuration.md | Updates “See Also” with new pages (Message Bus Providers, Registration Builders, Integrations, Testing, Hub). |
| docs/advanced/registration-builders.md.meta | Unity .meta for Registration Builders doc. |
| docs/advanced/registration-builders.md | New deep-dive on MessageRegistrationBuilder, build options, lifecycle, and DI integration patterns. |
| docs/advanced/message-bus-providers.md.meta | Unity .meta for Message Bus Providers doc. |
| docs/advanced/message-bus-providers.md | Updates “See Also” to point at runtime config, registration builders, integrations, and hub under getting-started. |
| docs/advanced/emit-shorthands.md.meta | Unity .meta for Emit Shorthands doc. |
| docs/advanced/emit-shorthands.md | Updates links to Targeting & Context, Diagnostics, String Messages, Quick Reference, and Message Types. |
| docs/advanced.meta | Unity .meta for docs/advanced folder. |
| docs.meta | Unity .meta for the new docs root folder. |
| Tests/Runtime/Benchmarks/BenchmarkSession.cs | Updates performance doc and comparisons doc paths from Docs/* to docs/architecture/*. |
| SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators.Tests/DocsSnippetCompilationTests.cs | Updates Quick Start docs path resolution from Docs/QuickStart.md to docs/getting-started/quick-start.md. |
| README.md | Re-points all doc links into docs/, adds OpenUPM + docs/wiki/changelog badges, and expands documentation/DI/performance sections to match the new structure. |
| Docs/VisualGuide.md.meta | Removes old Docs/-based VisualGuide meta file (replaced by docs/getting-started/visual-guide.md*). |
| Docs/UnityIntegration.md.meta | Removes legacy meta for old Docs/UnityIntegration.md. |
| Docs/Troubleshooting.md.meta | Removes legacy meta for old Troubleshooting doc under Docs/. |
| Docs/Testing.md.meta | Removes legacy meta for old Testing doc under Docs/. |
| Docs/TargetingAndContext.md.meta | Removes legacy meta for old Targeting & Context doc. |
| Docs/StringMessages.md.meta | Removes legacy meta for old String Messages doc. |
| Docs/RuntimeConfiguration.md.meta | Removes legacy meta for old Runtime Configuration doc. |
| Docs/Reference.md.meta | Removes legacy meta for old flat Reference doc. |
| Docs/Reference.md | Deletes legacy flat API reference in favor of docs/reference/reference.md. |
| Docs/QuickStart.md.meta | Removes legacy meta for old QuickStart doc. |
| Docs/QuickReference.md.meta | Removes legacy meta for old QuickReference doc. |
| Docs/Performance.md.meta | Removes legacy meta for old Performance doc. |
| Docs/Patterns.md.meta | Removes legacy meta for old Patterns doc. |
| Docs/Overview.md.meta | Removes legacy meta for old Overview doc. |
| Docs/MigrationGuide.md.meta | Removes legacy meta for old MigrationGuide doc. |
| Docs/MessageTypes.md.meta | Removes legacy meta for old MessageTypes doc. |
| Docs/MessageBusProviders.md.meta | Removes legacy meta for old MessageBusProviders doc. |
| Docs/ListeningPatterns.md.meta | Removes legacy meta for old ListeningPatterns doc. |
| Docs/InterceptorsAndOrdering.md.meta | Removes legacy meta for old InterceptorsAndOrdering doc. |
| Docs/Install.md.meta | Removes legacy meta for old Install doc. |
| Docs/Install.md | Deletes legacy Install doc (replaced under docs/getting-started/install.md). |
| Docs/Index.md | Deletes old documentation hub in favor of new MkDocs home + docs/getting-started/index.md. |
| Docs/Helpers.md.meta | Removes legacy meta for old Helpers doc. |
| Docs/Glossary.md.meta | Removes legacy meta for old Glossary doc. |
| Docs/GettingStarted.md.meta | Removes legacy meta for old GettingStarted doc. |
| Docs/FAQ.md.meta | Removes legacy meta for old FAQ doc. |
| Docs/EndToEndSceneTransitions.md.meta | Removes legacy meta for old scene transitions example. |
| Docs/EndToEnd.md.meta | Removes legacy meta for old end-to-end example. |
| Docs/Diagnostics.md.meta | Removes legacy meta for old Diagnostics doc. |
| Docs/Diagnostics.md | Deletes legacy Diagnostics doc (replaced by docs/guides/diagnostics.md). |
| CHANGELOG.md | Adds an “Unreleased” section documenting the introduction of docs site, wiki sync, and syntax highlighting improvements. |
| .pre-commit-config.yaml | Adjusts Node-based tooling pins for Prettier, markdownlint-cli2, and cspell in pre-commit hooks. |
| .llm/skills/documentation/link-quality-guidelines.md | Updates internal examples to refer to the new lowercase docs/ paths. |
| .llm/skills/documentation/documentation-updates.md | Switches references from Docs/ to docs/ and points performance/config mentions to new locations. |
| .llm/skills/documentation/documentation-update-workflow.md | Updates references from Docs/ to docs/ and adjusts example target paths. |
| .llm/skills/documentation/documentation-style-guide.md | Updates references to Docs/ to use docs/. |
| .llm/skills/documentation/documentation-code-samples.md | Updates skill metadata to point at docs/. |
| .llm/context.md | Removes the CI/CD tool versioning alignment section and adds shell “forbidden commands” guidance. |
| .gitignore | Ignores MkDocs build output (site/), progress directories, virtualenvs, and some additional project-local files. |
| .github/workflows/validate-docs.yml | New workflow to validate the MkDocs build and basic structure on PRs and pushes. |
| .github/workflows/sync-wiki.yml | New workflow that transforms docs/ into GitHub Wiki pages using the Node scripts and pushes to the *.wiki.git repo. |
| .github/workflows/deploy-docs.yml | New workflow that builds docs with MkDocs and deploys them to GitHub Pages on pushes to master. |
| .devcontainer/devcontainer.json | Updates devcontainer feature options (no auto-upgrade of packages). |
| .devcontainer/Dockerfile | Removes Yarn APT repository/keys to avoid expired GPG key issues, then installs common CLI tools. |
| .cspell.json | Adds documentation-related terms (MkDocs, pymdownx, libz, etc.) to the spellchecker dictionary. |
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.
First attempt at setting up GitHub Pages and a wiki