Zola is a fast static site generator written in Rust. This guide will help you get started with building your own Zola-powered website.

Why Zola?

Zola offers several advantages:

  • Fast: Built in Rust for excellent performance
  • Simple: Easy configuration and minimal setup
  • Flexible: Powerful templating with Tera
  • Feature-rich: Built-in syntax highlighting, search, and more

Basic Structure

A Zola site has this basic structure:

├── config.toml          # Site configuration
├── content/             # Your content (Markdown files)
├── templates/           # Tera templates
├── sass/               # Sass/SCSS files
├── static/             # Static assets
└── themes/             # Themes (optional)

Key Concepts

Sections and Pages

  • Sections are collections of content (like a blog or topics area)
  • Pages are individual content files within sections
  • Use _index.md files to define section properties

Templates

Zola uses the Tera templating engine. Key templates include:

  • base.html - Base template that others extend
  • index.html - Homepage template
  • section.html - Template for section pages
  • page.html - Template for individual content pages

Front Matter

Each content file starts with TOML front matter:

+++
title = "My Post"
date = 2025-07-26
description = "A brief description"
[taxonomies]
categories = ["Category"]
tags = ["tag1", "tag2"]
+++

Getting Started

  1. Install Zola
  2. Create a new site: zola init my-site
  3. Add content and templates
  4. Build with: zola build
  5. Serve locally: zola serve

That's the basics! Zola's documentation is excellent for diving deeper.