Rudolf J profile hosted using GitHub Pages.
Install hugo locally:
Assuming Fedora Linux Version: 42, for other platforms please see Installation.
sudo dnf install hugoTo run the server locally:
hugo server -D --disableFastRenderUse hugo new with the available archetypes to create new content:
# Structured blog post
hugo new content/blog/posts/your-post-title.md
# Creates a note
hugo new content/notes/posts/your-note-title.md
# Add a project
hugo new content/projects/your-project-name.md
# Add a publication
hugo new content/publications/your-publication-title.mdControl how code blocks are displayed vs rendered using attributes:
- ```mermaid- Default: render the diagram
- ```mermaid {.raw}- Show raw mermaid code (syntax highlighted)
- ```typst- Default: show raw typst code (syntax highlighted)
- ```typst {.render}- Compile and show output
- ```typst {.side-by-side}- Show code and output side by side
IMPORTANT: Typst rendering MUST be done locally before pushing to GitHub.
GitHub Actions does NOT render Typst files. You must generate and commit the PNG outputs locally.
To generate PNG/PDF files for Typst code blocks marked with {.render} or {.side-by-side}:
bash scripts/render-typst.shThis script will:
- Scan all markdown files for Typst code blocks that need rendering
- Compile them using the Typst CLI to PNG or PDF files (PDF for multi-page documents)
- Save outputs to static/rendered/typst/{page-slug}/typst-{hash}.pngor.pdf
- Cache previously rendered files (won't re-render if unchanged)
- 
Create or edit your markdown file: hugo new content/notes/posts/my-new-post.md # Edit the file, add Typst code blocks with {.render} or {.side-by-side}
- 
Generate Typst PNG/PDF outputs: bash scripts/render-typst.sh 
- 
Test locally: hugo server -D # Visit http://localhost:1313 and verify your content renders correctly
- 
Commit and push: git add content/notes/posts/my-new-post.md git add static/rendered/typst/my-new-post/ git commit -m "Add new post with Typst rendering" git push
- Create/edit markdown file
- Test locally with hugo server -D
- Commit and push
- REQUIRED: Render Typst locally before pushing - GitHub Actions does NOT have Typst installed
- Always commit the generated PNG/PDF files - They must be in the repository for GitHub Pages to serve them
- The render script uses caching - only re-renders changed content
- Raw Typst code blocks (```typst) don't need the script, they just show syntax-highlighted code
- Mermaid diagrams work without scripts (rendered client-side)