v0.2.0 adds the Machines page (nest machine, default machine, per-machine support grid, machine lead-ins) and the machines, nest-machine and support-grid topic IDs. desktop-help.md now points at the help repo's version rules so the next release is numbered the same way. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2.6 KiB
Desktop help
User guides live in ajisaacs/opennest-help: Markdown pages plus annotated screenshots, built with MkDocs into offline HTML. This repo holds only the code that shows that HTML and the pin of which help release ships.
In the app
- Help > OpenNest Help (F1 in the main window) opens the home topic; Help > Your First Nest opens the tutorial.
- A dialog opts in to context help with
HelpTopics.Attach(this, HelpTopics.<Topic>); F1 anywhere in it opens that topic. Auto Nest and the CAD Converter do this today. HelpFormis a single WebView2 window on its own STA thread, so modal dialogs never disable it. It serves the help folder from the private virtual hosthttps://help.opennest.local/; off-site links open in the default browser. WebView2 data goes to%LOCALAPPDATA%\OpenNest\WebView2.- The help folder is
Help\besideOpenNest.exe. SetOPENNEST_HELP_DIRto a local opennest-helpsite\build to preview unreleased pages. Without either, the menu explains that help is not installed. - A Windows
dotnet buildofOpenNest.csprojdownloads the pinned release once intoobj\help\(again whenscripts/help.jsonchanges) and copies it to the build output'sHelp\. A failed download only warns. CI (CI=true) skips it; pass-p:InstallHelp=falseto skip it offline. It never reachesdotnet publishoutput.
Topic IDs
HelpTopics constants are IDs, not file names. The help's topics.json maps each ID
to a page or page.html#anchor, and its build fails if a mapped page is missing. An
unknown ID falls back to the home page. Add the ID to topics.json (in the help repo)
before using a new constant here, and never rename an existing ID.
Packaging
scripts/help.json pins one opennest-help release (tag and SHA-256 of its
opennest-help.zip). scripts/Install-Help.ps1 downloads it, refuses a hash mismatch
and expands it into the package's Help\ folder; both Publish-Windows.ps1 and
Deploy-OpenNest.ps1 call it, and build-info.json records the help version. Pass
-HelpDirectory <site folder> to either script to package a local build instead.
To ship new help: tag the help repo vX.Y.Z by the version rules in its README
(Releases > Version numbers: MINOR for new pages or topic IDs, PATCH for fixes and
recaptures; tag only once the behavior it describes is on master), wait for its release,
then update tag and sha256 here (the release attaches opennest-help.zip.sha256).
When a UI change alters a documented screen or workflow, update or recapture the affected opennest-help pages (its README covers capture and markup).