Skip to content

docs: restructure the documentation using the Diataxis framework - #438

Open
sintaxasn wants to merge 16 commits into
mainfrom
docs/diataxis-restructure
Open

docs: restructure the documentation using the Diataxis framework#438
sintaxasn wants to merge 16 commits into
mainfrom
docs/diataxis-restructure

Conversation

@sintaxasn

@sintaxasn sintaxasn commented Aug 17, 2026

Copy link
Copy Markdown
Member

Summary

Reorganises the documentation into the four Diataxis categories, so that each page has one job instead of four.

The old sections (getting-started, usage, deployment-concepts, examples) mixed teaching, instructions, background and specification on the same page. That left gaps as well as clutter. Nothing owned command-line parameters, the deployment template or process execution, so those were documented in passing or not at all.

The commits are split by section, so they can be reviewed one at a time.

Structure

The tutorials are new. They are meant to be worked through in order: the first builds a deployment that installs an MSI, the second gives it a user experience with dialogs, deferral and progress reporting.

usage and examples are gone, replaced by how-to guides that each answer a single question. They run from installing the toolkit, through packaging for Intune and Configuration Manager, to upgrading a v3 package.

deployment-concepts becomes explanation: architecture, the deployment script, deployment modes, the user interface, configuration and logging. These pages say why the toolkit behaves as it does, and hand off to the how-to guides for the steps.

Reference picks up the material that previously had nowhere to live, including command-line parameters, the deployment template, dialogs, process execution and troubleshooting. Requirements, licensing, release notes and the FAQ move here from getting-started, which no longer exists.

sidebars.js follows the same shape, and the introduction and reference landing pages now say which section answers which kind of question.

Screenshots

Every dialog screenshot was captured from a real deployment against 4.2.0, using one sample package throughout.

In Reference > Dialogs, there are screenshots for each dialog variation. For the welcome dialog that means applications to close, deferral on its own, a close countdown, and a deferral deadline running alongside an automatic start countdown. The installation prompt appears with one, two and three buttons, with an input field, with that field pre-filled, with masked input, and with a list to choose from. All three restart variants are covered, as are both message box shapes.

Screenshots are shown in light or dark mode, depending on which you have set (changeable in the top right hand corner of the website).

Not included

The balloon notification has no screenshot. Windows draws it rather than the toolkit, and no toast is raised on the machine the captures came from.

The Classic dialogs are deliberately not pictured.

Compatibility

The moved pages keep their existing slugs (/getting-started/requirements, /getting-started/licensing, /getting-started/release-notes, /getting-started/faq), so external links still resolve.

The older dialog screenshots stay in the repository. versioned_docs for 4.1.x, 4.0.x and 3.10.2 still reference them.

Dependency updates are in their own commit.

Testing

pnpm build passes. onBrokenLinks is set to throw, so every internal link across the moved and rewritten pages resolves.

Two learning-oriented lessons that take a reader from nothing to a working
deployment:

- Your first deployment: install the module, generate a template, package
  and run a silent install.
- Adding a user experience: extend that deployment with the Welcome dialog,
  a progress dialog, deferrals and a restart prompt.

Tutorials are the first of the four Diataxis categories being introduced;
the remaining sections follow.
Replaces the Usage pages and two Getting Started pages with goal-oriented
guides:

- Install the toolkit (was getting-started/download)
- Create a deployment (was getting-started/creating-a-new-deployment)
- Run a deployment (was usage/how-to-deploy)
- Deploy an MSI with zero-config
- Install applications (was usage/installing-applications)
- Customize a deployment (was usage/customizing-deployments)

Each guide now answers a single question rather than mixing tutorial,
reference and explanation in one page.
Replaces usage/adding-ui-elements with two focused guides:

- Brand the user interface: dialog style, logo, banner and accent colour.
- Close apps and allow deferral: the Welcome dialog, close countdowns and
  deferral limits.

Screenshots of the dialogs described here live in reference/dialogs.
Documents packaging and distribution through each management platform,
which the old docs only covered indirectly through the examples section:

- Deploy with Intune: .intunewin packaging, install and uninstall commands,
  detection rules and exit code mapping.
- Deploy with Configuration Manager: application model, deployment types
  and detection methods.
- Deploy Google Chrome with Configuration Manager: worked end-to-end
  example (was examples/googlechrome-configmgr).
Replaces usage/admx-templates and examples/admxtemplate-LogPath:

- Configure the toolkit with Group Policy: importing the ADMX and ADML
  files and where the resulting settings land in the registry.
- Set the log path with Group Policy: worked example of overriding a single
  setting centrally.
- Upgrade from v3 (was getting-started/upgrade-guidance-v3x-to-v41)
- Upgrade from v4.0 (was getting-started/upgrade-guidance-4x-to-v41)
- Extend the toolkit with custom functions
- Troubleshoot a deployment

The upgrade pages keep their content but are reframed as tasks rather than
release guidance, and now sit alongside the other how-to guides.
The old Deployment Concepts pages mixed background with instructions. The
new Explanation section covers understanding only, and points at the how-to
guides for the steps:

- Architecture: module, session, dialogs and the compiled assemblies.
- The deployment script: what Invoke-AppDeployToolkit.ps1 does and why it
  is structured in phases (was deployment-concepts/invoke-appdeploytoolkit).
- Deployment modes: interactive, silent and non-interactive, and how the
  mode is chosen (was deployment-concepts/deployment-structure).
- User interface: Classic and Fluent, and the role of each dialog.
- Configuration: how built-in defaults, config.psd1 and Group Policy
  combine.
- Logging: log types, locations and what ends up in each.

Zero-config deployment moves to a how-to guide, added earlier in this
branch.
Requirements, licensing, release notes and the FAQ are look-up material
rather than a starting path through the docs, so they belong in reference.
Content is unchanged apart from frontmatter; the existing slugs are kept so
external links still resolve.

This empties and removes the Getting Started section.
Material that was previously scattered through the usage pages, or only
available by reading the template, now has a page of its own:

- Command-line parameters: every parameter accepted by
  Invoke-AppDeployToolkit.ps1.
- Deployment template: the files in a generated template and what each is
  for.
- Dialogs: each dialog, its parameters and its Classic/Fluent differences.
- Process execution: Start-ADTProcess and Start-ADTMsiProcess parameters,
  exit code handling and the process family.
- Troubleshooting: symptoms, causes and diagnostics in table form.
- Repoint links that referred to getting-started, usage, examples and
  deployment-concepts at their new locations.
- Replace release-note phrasing such as "Default changed to" in
  config-settings with statements of current behaviour, since the page
  documents the settings rather than the release.
- Refresh descriptions and sidebar positions so the reference sidebar reads
  in a sensible order.
Presents the docs sidebar as Tutorials, How-to Guides and Explanation, with
Reference kept in its own sidebar, and adds a short description to each
generated category index so the purpose of each section is stated where a
reader lands.

The introduction and reference landing pages are rewritten to point at the
new sections and to explain which one to read for which kind of question.
- framer-motion 12.42.2 -> 13.1.0
- eslint 9.39.0 -> 10.8.1
- typescript 6.0.3 -> 7.0.2
- @easyops-cn/docusaurus-search-local 0.55.2 -> 0.55.3
- @types/node 26.1.0 -> 26.2.0
- @types/react 19.2.17 -> 19.2.18
- @typescript-eslint/eslint-plugin 8.63.0 -> 8.67.0
- @typescript-eslint/parser 8.63.0 -> 8.67.0
- prettier 3.9.4 -> 3.9.6
Captured from a real deployment against PSAppDeployToolkit 4.2.0, all three
from the same package so the only difference between them is the setting
being illustrated:

- welcomedialog_fluent: the Welcome dialog in the Fluent style, with the
  default logo and accent colour.
- welcomedialog_classic: the same dialog with UI.DialogStyle set to
  Classic.
- welcomedialog_branded: the Fluent dialog with Assets\AppIcon.png replaced
  and FluentAccentColor set, to show what branding changes.

The explanation page now shows the two styles beside their descriptions,
and the branding how-to shows default and branded side by side under Check
the result.
Captures 13 dialog configurations from a real deployment against
PSAppDeployToolkit 4.2.0, each shot twice so the light image is shown to
readers in light mode and the dark image in dark mode via ThemedImage.

Tutorials:
- Your first deployment gains the progress dialog and the completion
  prompt, so the reader can check what they should be seeing.
- Adding a user experience gains the welcome dialog listing Notepad with
  three deferrals remaining, the same dialog with no Defer button, and the
  progress dialog mid-install showing the detail line and the bar at 75%.

Explanation:
- The user interface page shows the Fluent dialog as a theme-swapping
  image, which demonstrates the light and dark support the text claims, and
  gains the same dialog rendered in German as evidence for the localization
  section.
- Deployment modes shows the progress dialog as the one thing
  NonInteractive still allows.

How-to guides:
- Closing apps and allowing deferral gains the defer-only dialog and the
  countdown mid-count.
- Branding moves to theme-aware images for the default and branded
  comparison.
- Troubleshooting gains the help console.

Reference:
- Text formatting renders the Office 365 markup example the page already
  quotes. The page previously described five formatting tags without
  showing what any of them produce.

The Classic dialogs are out of scope, so the Classic screenshot added
earlier in this branch is removed rather than paired with a dark variant.

Images are cropped to the DWM extended frame bounds, which excludes the
window's drop shadow, and carry no margin; the existing .markdown_image
class supplies the shadow and corner radius as it does for every other
image in the docs.
@DanGough DanGough self-assigned this Aug 17, 2026
sintaxasn and others added 2 commits August 17, 2026 13:14
Rebuilds the dialogs reference around what each dialog can be asked to do, rather than showing one example of each and leaving the parameters to the function pages.

Adds thirteen configurations, each captured in light and dark against PSAppDeployToolkit 4.2.0:

- Welcome with a deferral deadline and an automatic start countdown at   the same time, which is the combination most estates end up running.
- Installation prompt with one, two and three buttons, with an input  field, with that field pre-filled by -DefaultValue, with -SecureInput, and with -ListItems.
- Restart prompt with -NoCountdown, with -Countdown, and with -CountdownNoHide.
- Dialog box with OK/Cancel and with Yes/No/Cancel.

The older dialog screenshots are left in place: versioned_docs for 4.1.x, 4.0.x and 3.10.2 still reference them.
Mostly just to get that CodeQL action to re-run successfully.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants