Documentation Guidelines
Goog-Sec documentation is written in Markdown and rendered by Astro Starlight. Contributions should be practical, source-aware, and explicit about scope.
Start locally
Section titled “Start locally”npm installnpm run devThe local site is available at the URL printed by Astro. Before opening a pull request, run:
npm testThis checks Markdown compatibility, TypeScript, the production build, required routes, stale repository links, and GitHub Pages base paths.
Page structure
Section titled “Page structure”Every page starts with frontmatter:
---title: "Identity Security"description: "Identity controls and implementation guidance for Google Workspace."---Then use one ## section per major idea. Starlight renders the page title from frontmatter, so do not add another # heading.
Recommended structure:
- Scope and intended audience
- Threat or control context
- Implementation steps
- Validation or evidence
- Operational limitations
- Current references
Security writing standard
Section titled “Security writing standard”- Distinguish Google Workspace, Google Cloud, Chrome, and cross-product behavior.
- State required product editions, licenses, roles, and permissions.
- Separate observed product behavior from recommendations.
- Include a verification step after configuration steps.
- Prefer primary Google, NIST, FedRAMP, RFC, or standards-body sources.
- Date-sensitive claims should include an access or verification date.
- Never publish credentials, tenant identifiers, customer data, or private infrastructure details.
- Label destructive commands and make rollback or recovery expectations clear.
Use descriptive link text:
Review [Google Cloud IAM documentation](https://cloud.google.com/iam/docs) before changing role bindings.For internal pages, use relative links that remain valid under the /Goog-Sec/ GitHub Pages base path:
See the [GCP IAM guide](../gcp/iam/).Do not hard-code root-relative links such as /gcp/iam/.
Asides
Section titled “Asides”Use Starlight asides for information that should interrupt the reading flow:
:::note[Scope]This control applies to managed Chrome browsers.:::
:::tip[Verification]Confirm the effective policy in `chrome://policy`.:::
:::caution[Change impact]Test this policy in a pilot organizational unit first.:::
:::danger[Lockout risk]Keep a tested break-glass administrator outside the affected group.:::Use color for meaning. Do not use danger or caution as decoration.
Code blocks
Section titled “Code blocks”Add a language identifier and optional filename:
```bash title="Verify the active account"gcloud auth list --filter=status:ACTIVE```Use fake project IDs, domains, emails, tokens, and resource names in every example.
Images and diagrams
Section titled “Images and diagrams”- Place public assets in
public/assets/. - Use meaningful alternative text.
- Do not include account numbers, email addresses, customer names, access tokens, or browser profile data.
- Prefer SVG for diagrams and PNG/WebP for screenshots.
- Content images automatically support keyboard-accessible full-size previews.
Pull-request checklist
Section titled “Pull-request checklist”- The page has accurate title and description frontmatter.
- Product scope, prerequisites, and permissions are explicit.
- Commands use synthetic values and include verification.
- Claims cite current primary sources.
- Internal links are relative and images include alt text.
-
npm testpasses. - The rendered page was checked in light, dark, desktop, and mobile layouts.
Page provenance
Community-maintained guidance. Use the edit link below to propose a sourced correction.
Was this page useful?
Help us prioritize the next improvement.