docs(template): clarify first restore and required checks

Document local package trials and creation of NuGet locks after generation. Refer onboarding to the canonical check table and correct standalone installed-update and tooling context names.

Refs: KofTwentyTwo/AppKit#10, KofTwentyTwo/AppKit#20

Co-Authored-By: Codex (GPT-6) <noreply@openai.com>
Signed-off-by: James Maes <james@kof22.com>
This commit is contained in:
james.maesandCodex committed 2026-10-10 18:50:54 -05:00
1 parent bb310f3208
commit fac10a78dc
3 files changed
+21 -10

No files matched your search

+2 -2
View File
@@ -90,8 +90,8 @@ pre-commit install --hook-type pre-commit --hook-type commit-msg
| `ci / build-test` | Locked restore, zero-warning build, unit tests, 100% coverage gate |
| `ci / format` | `dotnet format --verify-no-changes --severity warn` |
| `ci / ui-tests` | FlaUI end-to-end tests of the app |
| `ci / installed-updates` | Real stable/dev installers, upgrades, restart and published-output UI smoke |
| `scripts / powershell`, `scripts / javascript` | Tool lint, setup/coverage boundary tests, review tests and dependency signatures |
| `installed-updates` | Real stable/dev installers, upgrades, restart and published-output UI smoke |
| `powershell`, `javascript` | Tool lint, setup/coverage boundary tests, review tests and dependency signatures |
| `codeql / analyze (javascript-typescript)` | Static analysis of repository review tooling |
| `review / automated` (single maintainer) | Current-commit automated review acknowledged by the configured human maintainer |
+2
View File
@@ -61,6 +61,8 @@ Prerequisites:
- Optionally Visual Studio 2026 (Windows App SDK workload) or Rider
```powershell
# Once after generation, create and commit the NuGet locks locally:
# dotnet restore Kof22App.slnx -p:Platform=x64
dotnet restore Kof22App.slnx -p:Platform=x64 --locked-mode
dotnet build Kof22App.slnx -p:Platform=x64 -warnaserror
dotnet test Kof22App.slnx -p:Platform=x64 --no-build --filter "FullyQualifiedName!~UiTests"
+17 -8
View File
@@ -18,6 +18,15 @@ dotnet new k22-winapp -n Contoso.Notes --appId contoso-notes --displayName "Cont
--description "Quick notes that stay out of the way." -o Contoso.Notes
```
To try the installable package before its first publication, run from this clone:
```powershell
dotnet pack templates/KofTwentyTwo.Templates.WindowsApp.csproj -c Release -p:Version=0.1.0 -p:RestoreLockedMode=true -o artifacts/template
dotnet new install ./artifacts/template/KofTwentyTwo.Templates.WindowsApp.0.1.0.nupkg
dotnet new k22-winapp -n Contoso.Notes --appId contoso-notes --displayName "Contoso Notes" -o artifacts/Contoso.Notes
# Add --cli false for a GUI-only app; use a fresh output directory each time.
```
| Option | Default | What it sets |
| --- | --- | --- |
| `-n`, `--name` | (required) | Solution, project, namespace, and executable names (`Contoso.Notes.slnx`, `Contoso.Notes.Core`, `Contoso.Notes.exe`), and the repository name in links |
@@ -32,8 +41,10 @@ The copyright year in license headers becomes the current year.
## After generating
The generator omits dependency lock files. Before the first commit, run the README's
restore, build, test, coverage and format commands, then commit the resulting
The generator omits NuGet dependency lock files. Before the first commit, run
`dotnet restore <name>.slnx -p:Platform=x64` in the generated directory to create
them, then run the README's locked restore, build, test, coverage and format
commands. Commit the resulting
`packages.lock.json` files. Install the included hooks with
`pre-commit install --hook-type pre-commit --hook-type commit-msg` after `git init`.
The generated PowerShell tooling gate uses PSScriptAnalyzer 1.25.0.
@@ -41,12 +52,10 @@ The generated PowerShell tooling gate uses PSScriptAnalyzer 1.25.0.
1. Follow [the preview/apply/validate setup runbook](docs/repository-setup.md).
Create the GitHub repository (public, Product tier), push `main`, and apply the
[repository standard's](https://github.com/KofTwentyTwo/standards/blob/main/standards/repository.md)
settings and rulesets, with these required checks: `pr / title`, `pr / dco`,
`pr / dependency-review`, `security / secrets`, `security / sca`,
`security / workflows`, `codeql / analyze (csharp)`, `codeql / analyze (actions)`,
`ci / build-test`, `ci / format`, `ci / ui-tests`, `scripts / powershell`,
`scripts / javascript`, `codeql / analyze (javascript-typescript)`, and
`review / automated` for the single-maintainer policy.
settings and rulesets. Use the setup tool's required contexts and
[CONTRIBUTING.md](CONTRIBUTING.md)'s check table; standalone job names have no
workflow-name prefix. The source repository additionally requires `template`;
generated application repositories do not.
2. Create the `release` environment limited to `v*` tags, and list the repository in the
[standards repository inventory](https://github.com/KofTwentyTwo/standards/blob/main/MAINTAINERS.md#repositories)
(`K22-REPO-42`; the conformance checker fails until it is listed).