still

still is a minimal Zola theme for personal blogs, essays, notes, and other reading-first sites.

Live demo ยท Theme repository

Overview

The theme keeps the structure intentionally spare:

Features

Demo

A live demo is available here:

This repository also serves as the demo site source, so the files in content/, templates/, and sass/ double as working examples for the theme.

Installation

Create a new Zola site:

zola init myblog
cd myblog

Add the theme under themes/still:

git submodule add https://github.com/wjianbo/zola-theme-still themes/still

Enable the theme in config.toml:

theme = "still"
compile_sass = true
build_search_index = false

Quick start

A small site configuration can look like this:

base_url = "https://example.com"
title = "My Blog"
description = "Notes, essays, and writing."
author = "Your Name"
default_language = "en"
theme = "still"
compile_sass = true
build_search_index = false
generate_feeds = true
feed_filenames = ["atom.xml"]

[extra]
still_date_format = "%Y-%m-%d"
still_show_author = true

Then add content like this:

content/
โ”œโ”€โ”€ _index.md
โ””โ”€โ”€ posts/
    โ”œโ”€โ”€ _index.md
    โ””โ”€โ”€ my-first-post.md

Example content/_index.md:

+++
title = "My Blog"
+++

Welcome to my site. This introduction will appear above the post list on the homepage.

Example content/posts/_index.md:

+++
title = "Posts"
sort_by = "date"
+++

Example content/posts/my-first-post.md:

+++
title = "My First Post"
date = 2026-03-22
+++

Hello world.

Configuration

These optional values can be set in your site config.toml:

[extra]
still_date_format = "%Y-%m-%d"
still_show_author = true

Supported options

Content notes

Local development

Preview the theme from this repository with:

zola serve

Or from a separate Zola site that uses the theme:

zola serve

Then open the local server shown by Zola, usually http://127.0.0.1:1111.

Demo deployment

This repository includes a GitHub Actions workflow that builds the demo site and publishes it to the gh-pages branch.

To enable it:

  1. Open the repository settings on GitHub.
  2. Go to Pages.
  3. Set the source to Deploy from a branch.
  4. Select the gh-pages branch and the /(root) folder.
  5. Push to main.

The workflow runs on every push to main and updates the published files in gh-pages.

Philosophy

The goal of still is to remove structural noise without removing the basic affordances a blog still needs: