Skip to content

Commit 37bca48

Browse files
Clarify module README start page defaults
1 parent d6287af commit 37bca48

1 file changed

Lines changed: 20 additions & 6 deletions

File tree

src/docs/PowerShell/Modules/Repository-Defaults.md

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ After creating the repository:
2626
1. Replace template tokens such as `{{ NAME }}` and `{{ DESCRIPTION }}`.
2727
2. Remove scaffold functions, tests, and examples that do not represent the module.
2828
3. Set repository metadata and custom properties.
29-
4. Confirm the README reflects the module's actual status and uses `Install-PSResource` for installation.
29+
4. Confirm the README answers the start-page questions and uses `Install-PSResource` for installation.
3030
5. Confirm required common files are present.
3131
6. Confirm `.github/PSModule.yml` only overrides defaults when the module needs different behavior.
3232

@@ -60,7 +60,7 @@ Module repositories use the PSModule framework layout:
6060

6161
| Path | Default purpose |
6262
| ---- | --------------- |
63-
| `README.md` | Concise landing page for the repository. |
63+
| `README.md` | Concise start page for the module. |
6464
| `LICENSE` | Repository license. PSModule module repositories default to MIT unless a different license is explicitly decided. |
6565
| `CONTRIBUTING.md` | Contribution workflow or a repository-level pointer to the organization contribution guide. |
6666
| `SECURITY.md` | Security support policy and private vulnerability reporting instructions. |
@@ -80,6 +80,7 @@ Module repositories use the PSModule framework layout:
8080
| `src/classes/private/` | Internal implementation classes. |
8181
| `src/data/` | Static module data that ships with the module. |
8282
| `examples/` | Realistic user scenarios, not copies of command help. |
83+
| `docs/` | Product documentation source when the module needs documentation beyond generated command help. |
8384
| `tests/` | Pester tests and test data. |
8485
| `icon/` | Module icon assets. |
8586

@@ -168,7 +169,17 @@ Dependabot PRs still go through normal review. Automated dependency updates are
168169
169170
## README default
170171
171-
A module README is a landing page, not the command reference. It should help a user identify the module, install it, see what it can do, and then find generated documentation.
172+
A module README is a start page, not the command reference or full manual. It brings a reader in, answers the first questions, and sends them to the right documentation surface.
173+
174+
The README answers these questions, in this order:
175+
176+
| Question | Module README responsibility |
177+
| --- | --- |
178+
| What is it? | Name the module and define its scope in one short paragraph. |
179+
| Why should I care? | State the value or kind of task the module makes easier. |
180+
| How do I get it? | Show the PowerShell Gallery install and import commands. |
181+
| How does it work? | Show one to three representative capabilities or usage examples. |
182+
| How do I get more info? | Link to generated module documentation and PowerShell help. |
172183
173184
Module installation examples must use PSResourceGet:
174185
@@ -183,7 +194,7 @@ For implemented modules, use this shape:
183194
````markdown
184195
# <ModuleName>
185196

186-
<One short paragraph describing the module from the user's perspective.>
197+
<One short paragraph describing what the module is and why it is useful.>
187198

188199
## Installation
189200

@@ -196,7 +207,7 @@ Import-Module -Name <ModuleName>
196207

197208
## Capabilities
198209

199-
Use this section as a short showcase. Show the most important things the module makes possible with one to three realistic examples.
210+
Use this section as a short showcase and introduction to how the module works. Show the most important things the module makes possible with one to three realistic examples.
200211

201212
The goal is discovery and marketing, not exhaustive command documentation. A reader should understand why the module exists and what kind of tasks it helps with.
202213

@@ -217,10 +228,12 @@ Get-Help -Name 'CommandName' -Examples
217228
```
218229
````
219230

220-
README pages may include a short capabilities or usage showcase before the documentation link. Keep that section focused on discovery and marketing: show representative outcomes, not every command, parameter, or edge case.
231+
README pages should include a short capabilities or usage showcase before the documentation link when the module has working capabilities. Keep that section focused on discovery and marketing: show representative outcomes, not every command, parameter, or edge case.
221232

222233
README pages should not duplicate generated command documentation. Do not add full command inventories, parameter tables, or long reference sections when those details are already produced from comment-based help.
223234

235+
Do not add a community-file or policy link section by default. Readers can find standard repository files such as `LICENSE`, `CONTRIBUTING.md`, `SECURITY.md`, and `CODE_OF_CONDUCT.md` through GitHub conventions and the repository file tree. Link them only when the module has an unusual rule the user must know before using it.
236+
224237
## Placeholder and in-progress repositories
225238

226239
If a repository is reserved for a future module or still contains scaffold code, say that directly. Do not leave `{{ NAME }}`, `{{ DESCRIPTION }}`, `PSModuleTemplate`, `Greet-Entity`, or similar template examples in the README.
@@ -269,6 +282,7 @@ Use these defaults:
269282
- Command synopsis, parameters, examples, links, and outputs live in comment-based help.
270283
- Group overview pages live next to public command groups in `src/functions/public/<Group>/<Group>.md`.
271284
- Realistic end-to-end scenarios live in `examples/`.
285+
- Product docs beyond generated command help live under `docs/` and publish through GitHub Pages or the initiative's module documentation site.
272286
- README capability examples are short, representative, and user-facing.
273287
- README pages stay short and stable.
274288

0 commit comments

Comments
 (0)