Back to Skills

render-puzzle-docs

pjt222
Updated 2 days ago
6 views
17
2
17
View on GitHub
Metaworddesign

About

This skill renders jigsawR Quarto documentation sites for GitHub Pages, supporting full-site builds, single-page renders, and both cached or fresh render modes. It uses either a bundled script or direct Quarto invocation via WSL. Developers should use it for documentation updates, iterative editing, release preparation, or debugging Quarto rendering issues.

Quick Install

Claude Code

Recommended
Primary
npx skills add pjt222/agent-almanac -a claude-code
Plugin CommandAlternative
/plugin add https://github.com/pjt222/agent-almanac
Git CloneAlternative
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/render-puzzle-docs

Copy and paste this command in Claude Code to install this skill

Documentation

Render Puzzle Docs

Render jigsawR Quarto documentation site.

When Use

  • Build full documentation site after content changes
  • Render single page during iterative editing
  • Prepare documentation for release or PR
  • Debug render errors in Quarto .qmd files

Inputs

  • Required: Render mode (fresh, cached, or single)
  • Optional: Specific .qmd file path (for single-page mode)
  • Optional: Whether to open result in browser

Steps

Step 1: Choose Render Mode

ModeCommandDurationUse when
Freshbash inst/scripts/render_quarto.sh~5-7 minContent changed, cache stale
Cachedbash inst/scripts/render_quarto.sh --cached~1-2 minMinor edits, cache valid
SingleDirect quarto.exe~30sIterating on one page

Got: Render mode selected based on current situation: fresh for content changes or stale cache, cached for minor edits, single for iterating on one page.

If fail: Unsure whether cache is stale? Default to fresh render. Takes longer but guarantees correct output.

Step 2: Execute Render

Fresh render (clears _freeze and _site, re-executes all R code):

cd /mnt/d/dev/p/jigsawR && bash inst/scripts/render_quarto.sh

Cached render (uses existing _freeze files):

cd /mnt/d/dev/p/jigsawR && bash inst/scripts/render_quarto.sh --cached

Single page (render one .qmd file directly):

QUARTO_EXE="/mnt/c/Program Files/RStudio/resources/app/bin/quarto/bin/quarto.exe"
"$QUARTO_EXE" render quarto/getting-started.qmd

Got: Render completes without errors. Output in quarto/_site/.

If fail:

  • Check for R code errors in .qmd chunks (look for #| label: markers)
  • Verify pandoc available via RSTUDIO_PANDOC env var
  • Try clear cache: rm -rf quarto/_freeze quarto/_site
  • Check that all R packages used in .qmd files are installed

Step 3: Verify Output

ls -la /mnt/d/dev/p/jigsawR/quarto/_site/index.html

Confirm site structure:

  • quarto/_site/index.html exists
  • Navigation links resolve correctly
  • Images and SVG files render properly

Got: index.html exists and non-empty. Navigation links resolve. Images/SVGs render correctly in browser.

If fail: index.html missing? Render likely failed silently. Re-run with verbose output. Check for R code errors in .qmd chunks. Only some pages missing? Verify those .qmd files listed in _quarto.yml.

Step 4: Preview (Optional)

Open in Windows browser:

cmd.exe /c start "" "D:\\dev\\p\\jigsawR\\quarto\\_site\\index.html"

Got: Documentation site opens in Windows default browser for visual inspection.

If fail: cmd.exe /c start command fails from WSL? Try explorer.exe "D:\\dev\\p\\jigsawR\\quarto\\_site\\index.html" instead. Or navigate to file manually in browser.

Checks

  • quarto/_site/index.html exists and non-empty
  • No render errors in console output
  • All R code chunks executed successfully (check for error messages)
  • Navigation between pages works
  • All .qmd files have #| label: on code chunks for clean output

Pitfalls

  • Stale freeze cache: R code changed? Use fresh render to regenerate _freeze files
  • Missing R packages: Quarto .qmd files may use packages not in renv; install them first
  • Pandoc not found: Ensure RSTUDIO_PANDOC set in .Renviron
  • Long render times: Fresh render takes 5-7 minutes (14 pages with R execution); use cached mode during iteration
  • Code chunk labels: All R code chunks should have #| label: for clean rendering

See Also

  • generate-puzzle — generate puzzle output referenced in documentation
  • run-puzzle-tests — ensure code examples in docs are correct
  • create-quarto-report — general Quarto document creation

GitHub Repository

pjt222/agent-almanac
Path: i18n/caveman/skills/render-puzzle-docs
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

Related Skills

content-collections

Meta

This skill provides a production-tested setup for Content Collections, a TypeScript-first tool that transforms Markdown/MDX files into type-safe data collections with Zod validation. Use it when building blogs, documentation sites, or content-heavy Vite + React applications to ensure type safety and automatic content validation. It covers everything from Vite plugin configuration and MDX compilation to deployment optimization and schema validation.

View skill

polymarket

Meta

This skill enables developers to build applications with the Polymarket prediction markets platform, including API integration for trading and market data. It also provides real-time data streaming via WebSocket to monitor live trades and market activity. Use it for implementing trading strategies or creating tools that process live market updates.

View skill

creating-opencode-plugins

Meta

This skill helps developers create OpenCode plugins that hook into 25+ event types like commands, files, and LSP operations. It provides the plugin structure, event API specifications, and implementation patterns for JavaScript/TypeScript modules. Use it when you need to intercept, monitor, or extend the OpenCode AI assistant's lifecycle with custom event-driven logic.

View skill

sglang

Meta

SGLang is a high-performance LLM serving framework that specializes in fast, structured generation for JSON, regex, and agentic workflows using its RadixAttention prefix caching. It delivers significantly faster inference, especially for tasks with repeated prefixes, making it ideal for complex, structured outputs and multi-turn conversations. Choose SGLang over alternatives like vLLM when you need constrained decoding or are building applications with extensive prefix sharing.

View skill