Personal website built with Zola and the Duckquill theme.
Zola is a static site generator (SSG) that comes with a number of built-in features designed to make creating and managing a blog or personal website straightforward:
- Fast builds: Zola is written in Rust, providing extremely fast build times
- No database: Content is written in Markdown, stored as flat files
- Templating: Uses the Tera templating engine for flexible page layouts
- Built-in Sass compilation: No need for separate build tools
- Syntax highlighting: Automatic code syntax highlighting via Chroma
- Taxonomies: Built-in support for tags, categories, and other taxonomies
- Search: Built-in search functionality with multiple index formats
- Internationalization: Support for multiple languages
macOS (Homebrew):
brew install zolaLinux (pre-built binary):
curl -sL https://github.com/getzola/zola/releases/download/v<version>/zola-v<version>-x86_64-unknown-linux-gnu.tar.gz | tar xz
sudo mv zola /usr/local/bin/Windows (Chocolatey):
choco install zolaFrom source (requires Rust):
cargo install zolaFor more installation methods, see the official Zola documentation.
Duckquill is an opinionated, modern, clean Zola theme designed for blogging. Key features include:
- Clean, readable typography with Inter and JetBrains Mono fonts
- Dark/light mode support with theme switcher
- Responsive design
- Code syntax highlighting
- KaTeX support for LaTeX math rendering
- Table of contents generation
- Social sharing buttons
- RSS/Atom feed generation
- Multi-language support (i18n)
- Mastodon comment integration
-
Clone the theme as a submodule:
git submodule add https://github.com/daudix/duckquill.git themes/duckquill
Or clone directly:
git clone https://github.com/daudix/duckquill.git themes/duckquill
-
Set the theme in
config.toml:theme = "duckquill"
-
Copy the theme's config.toml options to your own
config.tomlas needed.
If using submodules:
git submodule update --remote themes/duckquillRun the local development server:
zola serveBuild for production:
zola buildThe output will be generated in the public/ directory.
mysite/
├── config.toml # Site configuration
├── content/ # Markdown content files
│ ├── _index.md # Homepage content
│ ├── posts/ # Blog posts
│ ├── projects/ # Projects page
│ └── resume/ # Resume page
├── static/ # Static assets (CSS, images, PDFs)
├── templates/ # Custom templates
└── themes/
└── duckquill/ # Theme files (git submodule)
Content is MIT licensed. See individual files for specific licenses.