Skip to content

Commit 1c1e574

Browse files
chore: sync READMEs from source repos
1 parent 02ab42a commit 1c1e574

1 file changed

Lines changed: 39 additions & 20 deletions

File tree

‎docs/projects/docker-compose-debugger.md‎

Lines changed: 39 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,24 +6,41 @@ Browser-based tool that turns messy Docker Compose output into clean, readable d
66

77
## Features
88

9-
### Service Cards
9+
### Three views
1010

11-
Parsed per-service view showing image, ports, volumes, networks, environment, and extras (restart policy, hostname, depends_on, resource limits). Empty sections are omitted. Switch between YAML and Cards views with the tab bar.
11+
- **Table** *(default)* — service overview + User/Group comparison + Volume comparison, all in one place. Best for quickly spotting UID/GID mismatches or which services share which host paths.
12+
- **Cards** — per-service view showing image, ports, volumes, networks, environment, and extras (user, restart policy, hostname, depends_on, resource limits). Empty sections are omitted.
13+
- **YAML** — full sanitized YAML output, ready to paste into a gist.
1214

13-
### Markdown Table
15+
### Copy as Markdown — GitHub or Discord
1416

15-
One-click "Copy as Markdown Table" generates a table with columns for Service, Image, Ports, Volumes, and Networks — paste directly into Discord or GitHub issues.
17+
Two dedicated buttons:
18+
19+
- **Copy MD (GitHub)** — `### heading` + bare pipe-table markdown. Renders as a real table on GitHub.
20+
- **Copy MD (Discord)** — `**bold**` labels + each table wrapped in a fenced code block. Discord doesn't render pipe tables, so the fence preserves alignment in monospace and prevents `_underscore_` / `*asterisk*` characters in volume paths from triggering inline formatting.
21+
22+
Both formats include the Services overview, User/Group comparison, and Volume comparison sections.
23+
24+
### User / Group merging
25+
26+
The "User" column merges three sources of identity into a single value so you can spot mismatches at a glance:
27+
28+
- explicit `user: <UID>:<GID>` directive
29+
- `PUID` / `PGID` env vars (linuxserver convention)
30+
- `group_add` and `UMASK` in the comparison table
31+
32+
Lookups are case-insensitive (so a typo'd `Puid` still surfaces). When the directive matches `PUID:PGID`, only one value is shown; when they conflict, the directive is shown with the env values annotated.
1633

1734
### Redaction
1835

1936
| What | Example | Result |
2037
|------|---------|--------|
21-
| Sensitive env values | `RADARR__POSTGRES__HOST: db.example.com` | `RADARR__POSTGRES__HOST: **REDACTED**` |
38+
| Sensitive env keys | `MYSQL_PASSWORD`, `API_KEY`, `DATABASE_URL`, `AWS_SECRET_ACCESS_KEY`, `*_FILE` variants | value replaced with `**REDACTED**` |
39+
| Inline credentials in URLs | `postgres://<user>:<pw>@db/app` | redacted regardless of the env-var name |
40+
| Vendor token formats | GitHub PATs (`ghp_…`), AWS access keys (`AKIA…`), Tailscale auth keys (`tskey-…-…`), Discord/Slack webhooks, JWTs | redacted regardless of the env-var name |
2241
| Email addresses | `NOTIFY: user@example.com` | `NOTIFY: **REDACTED**` |
2342
| Home directory paths | `/home/john/media:/tv` | `~/media:/tv` |
2443

25-
Detected patterns: `password`, `secret`, `token`, `api_key`, `auth`, `credential`, `private_key`, `vpn_user`, and more.
26-
2744
Safe-listed keys (kept as-is): `PUID`, `PGID`, `TZ`, `UMASK`, `LOG_LEVEL`, `WEBUI_PORT`, etc.
2845

2946
### Noise Stripping
@@ -73,19 +90,21 @@ Single-page app built with Vite + vanilla TypeScript. The build produces one sel
7390

7491
```
7592
src/
76-
dom.ts # Shared el() DOM helper (no innerHTML)
77-
patterns.ts # Type guards, regex patterns, utility functions
78-
extract.ts # Extracts YAML from mixed console output
79-
redact.ts # Redacts sensitive values, anonymizes paths
80-
noise.ts # Strips auto-generated noise fields
81-
advisories.ts # Detects misconfigurations (hardlinks, etc.)
82-
services.ts # Parses compose object into ServiceInfo[]
83-
markdown.ts # Generates markdown table from ServiceInfo[]
84-
cards.ts # Renders per-service card DOM
85-
config.ts # Customizable patterns, localStorage persistence
86-
clipboard.ts # Copy, PrivateBin, and Gist sharing
87-
disclaimer.ts # PII warnings and legal disclaimers
88-
main.ts # UI assembly, tabs, and event wiring
93+
dom.ts # Shared el() DOM helper (no innerHTML)
94+
patterns.ts # Key + value regex patterns, type guards, helpers
95+
extract.ts # Extracts YAML from mixed console output
96+
redact.ts # Redacts sensitive values, anonymizes paths
97+
noise.ts # Strips auto-generated noise fields
98+
advisories.ts # Detects misconfigurations (hardlinks, etc.)
99+
services.ts # Parses compose object into ServiceInfo[] + UserGroupInfo
100+
markdown.ts # GitHub + Discord markdown generators
101+
cards.ts # Renders per-service card DOM
102+
volume-table.ts # Service / User-Group / Volume comparison tables
103+
volume-utils.ts # Volume parsing + matrix builder
104+
config.ts # Customizable patterns, localStorage persistence
105+
clipboard.ts # Copy (with execCommand fallback), PrivateBin, Gist
106+
disclaimer.ts # PII warnings and legal disclaimers
107+
main.ts # UI assembly, tabs, and event wiring
89108
```
90109

91110
### Testing

0 commit comments

Comments
 (0)