Browse Docs pages
Overview
Auto-scaffolds test pages for all HTML templates
Source: bones/scripts/rc-showcase.sh.
Usage
rotkeeper.sh showcase [options]
Options
--dry-run Preview generated showcase pages without writing
--verbose Show detailed logs
--help, -h Show this help message
--version, -v Show script version and quit
Examples
bash rotkeeper.sh showcase --dry-run # Preview gallery scaffolding
bash rotkeeper.sh showcase # Generate showcase content
Exit codes
0 Success
1 Generation failure
Reads and writes
Environment: reads CONTENT_DIR, DRY_RUN, OLIVER_BIN, OUTPUT_DIR, RK_OLIVER_BIN, ROOT_DIR, SCRIPT_DIR, TEMPLATE_DIR (canonical via rc-env.sh / rk_load_env); overrides RK_OLIVER_BIN, RK_RENDERER, ROTKEEPER_VERSION when set.
Working directory: No CWD assumption โ all paths are root-relative via ROOT_DIR/BONES_DIR/CONTENT_DIR/etc. derived from rc-env.sh; helpers rk_canonical_path/rk_canonical_or_raw resolve symlinks/portably.
Inputs and outputs: reads every HTML template in TEMPLATE_DIR; overwrites generated CONTENT_DIR/showcase/showcase-<theme>.md sources, the gallery index source, and OUTPUT_DIR/showcase/index.html.
Template variables get sample frontmatter values except internal tokens; descriptions alternate present/absent across themes. A fixed sample body exercises headings, emphasis, quotes, tables, and code. Available Oliver validates templates; without it the command warns and continues.
The gallery HTML is a direct preview write, not a rendered page. Run bash rotkeeper.sh render after scaffolding to render showcase sources. Manual changes to generated showcase files are replaced on the next real run; dry-run previews only.
Side effects
- write: creates home/content/showcase if missing
- write: overwrites home/content/showcase/showcase-
.md (frontmatter + demo body) - write: overwrites home/content/showcase/index.md gallery source
- write: creates output/showcase/ and overwrites its index.html
Notes
Design
Discovers top-level HTML templates in the active TEMPLATE_DIR, scaffolds CONTENT_DIR/showcase/showcase-<name>.md, and writes both a gallery source index and an immediate static gallery at OUTPUT_DIR/showcase/index.html. Names remove the .html suffix and optional theme- prefix. Sample frontmatter is derived from template tokens; a common body exercises headings, lists, quotes, tables, and code.
Limits
Does not render the individual showcase pages; run render afterward to populate their linked HTML. The template-directory existence check is explicit. The optional Oliver check only tests whether a template is non-empty when an executable renderer is discoverable; it never invokes Oliver or validates the template dialect. The source gallery contains raw HTML, and per-template scaffolds do not automatically select XHTML profiles.
Cautions
Real runs replace generated showcase sources and both gallery indexes, so manual additions there are lost. Templates whose names differ only by the removed theme- prefix map to the same showcase filename. Dry-run skips page/index writes but unconditionally creates the showcase source directory and still writes bootstrap logs. The direct gallery output is a preview write, not a render-manifest update.
History
No matching entries in CHANGELOG.md.