---
title: 'Theme styleguide: every element the theme must handle'
url: 'https://www.sysadminheaven.eu/blog/theme-styleguide'
markdown: 'https://www.sysadminheaven.eu/blog/theme-styleguide.md'
date: '2026-08-29'
description: 'This page exists to be looked at, not read. It renders every element the theme supports so that regressions are obvious after a change. Headin'
taxonomy:
  category:
    - reference
  tag:
    - windows
    - linux
    - powershell
    - containers
    - networking
    - troubleshooting
---

# Theme styleguide: every element the theme must handle

A maintenance fixture exercising headings, code, tables, alerts and the awkward edge cases

 29 August 2026 2 min read 

- [reference](https://www.sysadminheaven.eu/blog/category:reference)
- [windows](https://www.sysadminheaven.eu/blog/tag:windows)
- [linux](https://www.sysadminheaven.eu/blog/tag:linux)
- [powershell](https://www.sysadminheaven.eu/blog/tag:powershell)
- [containers](https://www.sysadminheaven.eu/blog/tag:containers)
- [networking](https://www.sysadminheaven.eu/blog/tag:networking)
- [troubleshooting](https://www.sysadminheaven.eu/blog/tag:troubleshooting)

This page exists to be looked at, not read. It renders every element the theme supports so that regressions are obvious after a change.

## Headings and text

Body text sits on a constrained measure so long-form technical writing stays readable. **Bold text** carries weight, *italics* less so, and `inline code`sits inside prose without breaking the line rhythm.

### A third-level heading

Links look like [this one](https://www.sysadminheaven.com/blog) and a bare long URL must wrap rather than push the page sideways: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-service?view=powershell-7.4

#### A fourth-level heading

##### A fifth-level heading

## Shell environments

The theme must not assume `$` is the universal prompt. Three environments, all equally native.

PowerShell:

```powershell
Get-Service -Name 'W32Time' | Select-Object Status, StartType
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\W32Time' -Name Start -Value 2
```

Windows CMD:

```batch
ipconfig /all | findstr /i "DNS Servers"
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductName
```

Bash:

```bash
systemctl status docker --no-pager
journalctl -u docker.service --since "1 hour ago" | tail -20
```

A shell session, where output should read differently from the command:

```shell-session
root@server:~# docker ps --format '{{.Names}}\t{{.Status}}'
nginx-proxy-manager Up 2 hours (healthy)
grav    Up 2 hours (healthy)
```

## Configuration formats

```yaml
services:
  grav:
    image: linuxserver/grav:latest
    environment:
      PUID: 1000
      TZ: Europe/Amsterdam
    ports:
      - "127.0.0.1:8080:80"
```

```json
{
  "log-driver": "json-file",
  "log-opts": { "max-size": "10m", "max-file": "3" }
}
```

```nginx
location / {
    allow 2a02:2479:55:5400::1;
    deny all;
    proxy_pass http://127.0.0.1:8080;
}
```

A deliberately long line, to prove a code block scrolls itself rather than the page:

```bash
docker run --rm -it --name a-very-long-container-name --network revproxy -e SOME_ENVIRONMENT_VARIABLE=value -v /root/docker/www/config:/config -p 127.0.0.1:8080:80 linuxserver/grav:latest /bin/sh -c "echo this line is far wider than any phone screen"
```

## Alerts

 Note

Useful context that is not critical.

 Tip

A shortcut worth knowing.

 Important

Something you should not skip.

 Warning

This one bites if ignored.

 Caution

Doing this wrong causes damage.

A plain blockquote, for comparison:

> Not every quotation is an alert. Sometimes it is just a quotation.

## Tables

| Setting | Value | Notes |
|---|---|---|
| `log-driver` | `json-file` | Default |
| `max-size` | `10m` | Per file |
| `max-file` | `3` | Caps total at 30 MB |

A wide table, which must scroll inside its own box:

| Host | Address | OS | Role | Uptime | Kernel | Notes |
|---|---|---|---|---|---|---|
| dc01 | 10.0.0.10 | Windows Server 2022 | Domain Controller | 42d | 10.0.20348 | FSMO roles |
| prox01 | 10.0.0.20 | Proxmox VE 8 | Hypervisor | 130d | 6.8.12-4-pve | Cluster primary |
| web01 | 10.0.0.30 | Ubuntu 26.04 | Reverse proxy | 3d | 7.0.0-30 | Public facing |

## Lists

Unordered:

- Windows Server and Active Directory
- Linux, containers and orchestration 
    - Nested item
    - Another nested item
- Networking, DNS and firewalls

Ordered:

1. Reproduce the fault
2. Read the actual error, not the summary
3. Change one thing
4. Verify before moving on

## Long paths

Registry: `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon`

UNC: `\\fileserver01.corp.example.com\Departments$\Engineering\Infrastructure`

Linux: `/var/lib/docker/overlay2/f3a8c9d2e1b4/diff/etc/nginx/conf.d/default.conf`

## Horizontal rule

---

That is everything.

- [reference](https://www.sysadminheaven.eu/blog/category:reference)
- [windows](https://www.sysadminheaven.eu/blog/tag:windows)
- [linux](https://www.sysadminheaven.eu/blog/tag:linux)
- [powershell](https://www.sysadminheaven.eu/blog/tag:powershell)
- [containers](https://www.sysadminheaven.eu/blog/tag:containers)
- [networking](https://www.sysadminheaven.eu/blog/tag:networking)
- [troubleshooting](https://www.sysadminheaven.eu/blog/tag:troubleshooting)

## Related

- [The SCCM client that was running, registered, and ignoring every deployment](https://www.sysadminheaven.eu/blog/sccm-client-running-and-ignoring-you) 30 Aug 2026

---

## Navigation

- Parent: [Blog](https://www.sysadminheaven.eu/blog.md)
- Previous: [The SCCM client that was running, registered, and ignoring every deployment](https://www.sysadminheaven.eu/blog/sccm-client-running-and-ignoring-you.md)
