Skip to content

docs(manual): user manual in book form (PDF)#60

Merged
f3rdy merged 1 commit intomasterfrom
docs/manual-pdf
Apr 28, 2026
Merged

docs(manual): user manual in book form (PDF)#60
f3rdy merged 1 commit intomasterfrom
docs/manual-pdf

Conversation

@f3rdy
Copy link
Copy Markdown
Contributor

@f3rdy f3rdy commented Apr 28, 2026

Summary

Adds `docs/manual.pdf` — a hand-written end-to-end manual in book form. Markdown source, build script, and the rendered artifact are all under `docs/`. README links to the PDF.

Tooling Choice

`pandoc --pdf-engine=xelatex`. Both binaries were already on the system; no extra toolchain. All layout settings (fonts, classoptions, geometry, color) live in the YAML metadata block at the top of `manual.md` — no separate template file. Build is one command:

```bash
bash docs/build_manual.sh
```

Typography

Role Font
Body Noto Serif
Headings Noto Sans
Code DejaVu Sans Mono

All three are common defaults on Linux distributions and ship with most Noto/DejaVu packages. Picked for screen readability (Noto Serif has good x-height, clean curves) and clean copy-paste behaviour from monospace blocks (DejaVu's character distinctions are unambiguous: `Il1`, `O0`, `{[`).

`scrbook` class with running headers, numbered sections, and page numbers gives the document a real book feel. Tango syntax highlighting on code blocks with a subtle gray background separates them from prose without being noisy.

Content

23 A4 pages, eleven chapters:

  1. Introduction — what vaultctl does, what it isn't
  2. Installation — binary, source, external tools
  3. First Steps — init, set, get, list, importing existing vaults
  4. Configuration — `.vaultctl/config.yml`, password chain
  5. Daily Use — full read/write/search/edit/delete surface
  6. Metadata and Expiry — `vault-keys.yml`, `check`
  7. Schema Validation — `validate`, bundled vs custom schemas
  8. Schema Lifecycle — `infer`, `sync`, schema-aware `set`
  9. Type Detection — `detect-types`, AI mode (with link to SECURITY.md)
  10. Troubleshooting — the four most common errors
  11. Command Reference Appendix

Hand-written prose, not a flat `--help` dump. Each chapter shows commands in context with realistic examples. AI-detection security is a one-paragraph summary that points to `docs/SECURITY.md` for the full architecture — no duplication.

Why a PDF and Not Just More Markdown

The README is the surface — "what is this and how do I get the first secret read in two minutes". The manual is the book — "sit down for 30 minutes and learn vaultctl properly". Different reading modes, different artifacts. A monospace-friendly PDF reads better on a quiet evening than a long markdown scroll, and the typesetting (line breaks in long commands, hyphenation, generous margins) actually helps comprehension.

Maintenance

Source is plain markdown — edits go in `docs/manual.md`. Re-running `bash docs/build_manual.sh` regenerates the PDF. The committed PDF is intentional: readers shouldn't need pandoc + xelatex installed to read the manual.

Closes #59.

Hand-written end-to-end manual covering installation, daily use,
configuration, metadata, schema validation, schema lifecycle, type
detection, troubleshooting, and a command reference appendix.

Tooling: pandoc + xelatex (both already installed; nothing exotic).
Fonts pulled from system: Noto Serif body, Noto Sans headings, DejaVu
Sans Mono for code — all common Linux distribution defaults, all
selected for screen readability and clean copy-paste.

23 pages A4, scrbook class for proper book typography (running
headers, numbered sections, page numbers, generous margins). Tango
syntax highlighting on code blocks with subtle background tint.

Files:
- docs/manual.md — markdown source, single file with YAML metadata
- docs/manual.pdf — committed artifact so readers don't need pandoc
- docs/build_manual.sh — single-command rebuild
- README link added

Closes #59.
@f3rdy f3rdy merged commit b8bc39c into master Apr 28, 2026
2 checks passed
@f3rdy f3rdy deleted the docs/manual-pdf branch April 28, 2026 09:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add docs/manual.pdf — user manual in book form

1 participant