1.1 KiB
1.1 KiB
Project Structure
config.toml: site config (base_url, title, markdown settings)content/: blog posts organized by category (ml-tech, homelab, ai-system, dl4traj)templates/: Zola templates + shortcodessass/style.scss: styles with light/dark mode via CSS variablesstatic/: favicons, web manifestpublic/: built output
Shortcodes
Image with max-width constraint. width defaults to 500px:
{{ img(src="./diagram.png", alt="Architecture", width="600px") }}
Figure caption:
{% cap() %}The *architecture* diagram{% end %}
Block math:
{% math() %}
\nabla \cdot \mathbf{E} = \frac{\rho}{\epsilon_0}
{% end %}
Inline math:
The loss {% m() %}\mathcal{L}{% end %} is minimized.
Inserts table of contents where placed:
{{ toc() }}
Deployment
Automated via Forgejo Actions (.forgejo/workflows/deploy.yml). On push:
main→ production deploy to Cloudflare Pagespreview→ preview deploy with draft posts included
Required secrets in Forgejo repo settings: CLOUDFLARE_API_TOKEN, CLOUDFLARE_ACCOUNT_ID, CF_PAGES_PROJECT_NAME.