HugoBlog

hugo-theme-liquid — Hugo Blog Template

By wych

Hugo Theme Liquid is a responsive blog theme based on Hugo. It uses a readable editorial layout and progressively enhances liquid-glass surfaces when advanced browser effects are supported, falling back to ordinary CSS when they are not.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-12View source

What stands out

A quick read of the recorded project description.

01

Responsive home, post, section, taxonomy, and 404 layouts

02

Hugo-native pagination, table of contents, RSS, and Markdown rendering

03

Light, dark, and system-following appearance modes with persisted user preference

04

Progressive enhancement of liquid-glass effects, falling back to ordinary CSS when unavailable

05

Posts display publication date, last modified date, reading time, word count, and previous/next navigation

06

Semantic HTML, keyboard focus styles, accessible controls, and core navigation that does not depend on JavaScript

Template Details

Hugo Theme Liquid is a blog theme for Hugo that emphasizes a quiet reading experience and responsive layout. It provides layouts for the home page, posts, sections, taxonomies, and 404 pages, and integrates Hugo's native pagination, table of contents, RSS, and Markdown rendering. Posts can display publication date, last modified date, reading time, word count, and previous/next navigation. The theme supports light, dark, and system-following appearance modes and remembers the user's choice. The liquid-glass effect is progressive enhancement: when JavaScript is disabled, the browser lacks the required filter capabilities, or a lower quality is selected, pages still use ordinary CSS surfaces and core content is unaffected. The theme does not depend on React, Vue, Tailwind, or third-party runtimes. Before use, note the Hugo version requirement (0.128.0 or higher); using Hugo Modules or building the bundled example site requires Go 1.18 or higher.

HugoBlog

Is it right for your project?

Use Cases

  • Building a personal blog focused on text reading
  • Technical article sites that need category and tag organization
  • Blogs that need to remain readable on devices that do not support advanced browser effects
  • Projects using Hugo that want to avoid introducing React, Vue, or Tailwind

Suitable For

  • Developers building blogs with Hugo
  • Site authors who value typographic readability and progressive enhancement
  • Personal sites that need light/dark modes and basic SEO metadata

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Requires Hugo 0.128.0 or higher; the site configuration file must be named hugo.yaml, hugo.toml, or be located under config/_default/*.

  2. 2

    Using Hugo Modules or building the bundled exampleSite requires Go 1.18 or higher.

  3. 3

    Can be installed via Git submodule, local copy, or Hugo Module, and set theme: "hugo-theme-liquid" in the site configuration.

  4. 4

    The example site is in the exampleSite directory; run hugo server for local preview, or use hugo --minify to build a production version.

  5. 5

    Third-party assets such as demo images, fonts, and icons must be checked against their respective licenses; the MIT license of the code alone is not sufficient to determine this.

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in the public repository; the free scope is the code of this version and does not mean external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use, and distribution of this version's code are permitted.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; the MIT license of the code alone is not sufficient to determine this.
  • External services such as domains, hosting, databases, payments, or AI may incur separate charges.
  • Using this theme requires Hugo version 0.128.0 or higher; lower versions cannot be used.
  • Using Hugo Modules or building the bundled example site requires Go 1.18 or higher.
  • The site configuration file must be named hugo.yaml, hugo.toml, or be located under the config/_default/ directory.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

- Hugo 0.128.0 or later

Original README

- Go 1.18 or later when using Hugo Modules or building the included exampleSite

Original README

A Hugo site configuration file named hugo.yaml, hugo.toml, or config/_default/*

Original README
https://github.com/wych/hugo-theme-liquid/blob/main/LICENSEhttps://github.com/wych/hugo-theme-liquid/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-12. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 80 / 100
Technologies
Hugo
Website type
Blog
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-09-01
Screenshot last checked
2026-10-12

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Hugo as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Review declaration: [email protected] · 2026-10-13

Inspect the recorded source material

SHA-256: 927ddbc4e5fec4237bb1a5bd22f29d9dc1d5d9817c817c218a98dffacbfc05c3

2026-10-12T07:08:05.952Z

Source file / repository
# Hugo Theme Liquid

ENGLISH | [简体中文](README.zh-CN.md)

Hugo Theme Liquid is a quiet, responsive blog theme for Hugo. It combines a readable editorial layout with progressive liquid-glass surfaces that fall back to ordinary CSS when advanced browser effects are unavailable.

**Live demo:** [demo.liquid.wych.xyz](https://demo.liquid.wych.xyz)

## Features

- Responsive home, article, section, taxonomy, and 404 layouts
- Hugo-native pagination, table of contents, RSS, and Markdown rendering
- Categories and tags with configurable taxonomy names
- Article metadata: publication date, last modified date, reading time, word count, and previous/next navigation
- Light, Dark, and System appearance modes with persisted user preference
- Progressive Liquid Glass enhancement with CSS fallback, reduced-quality mode, and reduced-motion support
- Responsive code blocks, tables, images, long links, and long words
- Basic SEO metadata: title, description, canonical URL, Open Graph, and article metadata
- Semantic HTML, keyboard focus styles, accessible controls, and no-JavaScript core navigation
- No React, Vue, Tailwind, or third-party runtime dependency

## Requirements

- Hugo 0.128.0 or later
- A Hugo site configuration file named hugo.yaml, hugo.toml, or config/_default/*
- Go 1.18 or later when using Hugo Modules or building the included exampleSite

## Installation

### Git submodule

From an existing Hugo site:

~~~bash
git submodule add https://github.com/wych/hugo-theme-liquid themes/hugo-theme-liquid
~~~

Add the theme name to the site configuration:

~~~yaml
theme: "hugo-theme-liquid"
~~~

### Local copy

Copy this repository into your site's themes/ directory and set theme: "hugo-theme-liquid" in the site configuration.

### Hugo Module

From the root of an existing Hugo site, initialize the site as a Hugo Module:

~~~bash
hugo mod init github.com/your-account/your-site
~~~

Add the theme as a module import:

~~~yaml
module:
  imports:
    - path: github.com/wych/hugo-theme-liquid
~~~

Pin the release and tidy the module files:

~~~bash
hugo mod get github.com/wych/[email protected]
hugo mod tidy
~~~

Hugo Modules require Go 1.18 or later.

## Quick start

The included demo runs directly from this repository:

~~~bash
cd exampleSite
hugo server
~~~

Build the demo for production with:

~~~bash
hugo --minify
~~~

The exampleSite can be used to preview the current theme locally.

## Minimal site configuration

This is a starting point for a new Hugo site. Copy it into the site's configuration and add your own content.

~~~yaml
baseURL: "https://example.com/"
locale: "en-US"
title: "My Hugo site"
theme: "hugo-theme-liquid"

menu:
  main:
    - name: "Home"
      url: "/"
      weight: 10
      params:
        icon: home
    - name: "Posts"
      url: "/posts/"
      weight: 20
      params:
        icon: article

taxonomies:
  tag: tags
  category: categories

pagination:
  pagerSize: 10
  path: page

markup:
  tableOfContents:
    startLevel: 2
    endLevel: 3

outputs:
  home:
    - HTML
    - RSS

params:
  mainSection: "posts"
  author: "Site Demo"
  description: "A short description of my site."
  appearance:
    defaultTheme: auto
    enableThemeToggle: true
  home:
    showProfile: true
    showRecentPosts: true
    recentPostsLimit: 10
  article:
    showToc: true
    showReadingTime: true
    showWordCount: true
    showLastModified: true
    showPrevNext: true
~~~

For a complete configuration example, see [exampleSite/hugo.yaml](exampleSite/hugo.yaml).

## Configuration

### Site identity and branding

The theme reads these values from params:

| Parameter | Purpose |
| --- | --- |
| author | Display name and SEO author value |
| handle | Optional handle below the display name |
| tagline | Optional profile tagline |
| bio | Optional profile biography |
| description | Site-wide SEO and RSS fallback description |
| copyright | Footer text |
| logo | Optional logo image path |
| logoText | Text mark used when no logo image is configured |
| avatar | Optional avatar image path |
| favicon | Optional favicon path |
| themeColor / themeColorDark | Browser theme colors for light and dark modes |
| image / images | Site-wide Open Graph image fallback |

github and email provide simple social-link fallbacks. For multiple links, use params.social:

~~~yaml
params:
  social:
    - name: "GitHub"
      url: "https://github.com/"
      icon: github
      newTab: true
~~~

Leave these values empty or omit them if the site should not display social or email links.

### Home page and taxonomy

~~~yaml
params:
  mainSection: "posts"       # Takes precedence over mainSections when both exist.
  mainSections: [posts]       # Optional list of sections aggregated on the home page.
  taxonomy:
    tag: tags                 # Must match the site-level taxonomy name.
    category: categories
  tags: []                    # Optional explicit home-page tag cloud.
  home:
    showProfile: true
    showRecentPosts: true
    recentPostsLimit: 0       # 0 uses pagination.pagerSize; positive values override it.
~~~

If params.tags is empty, the home page derives the tag cloud from existing taxonomy terms. The params.taxonomy.tag and params.taxonomy.category values allow custom taxonomy names.

### Article options

~~~yaml
params:
  article:
    showToc: true
    showReadingTime: true
    showWordCount: true
    showLastModified: true
    showPrevNext: true
~~~

The legacy params.toc.enabled, params.articleMeta.*, and params.colorScheme.* settings remain supported for compatibility. The newer article, appearance, and enableThemeToggle values take precedence when present.

### Liquid Glass

Liquid Glass is progressive enhancement. The readable CSS surface remains active when JavaScript is disabled, when the browser lacks the required filter capabilities, or when a lower quality is selected.

~~~yaml
params:
  liquidGlass:
    enabled: true
    quality: auto              # auto | full | reduced | css
    articleQuality: reduced    # full | reduced | css
    fullComponents:
      - navbar
    mode: standard             # standard | prominent
    interaction: true
    pauseOnScroll: true
    displacementScale: 9
    blurAmount: 0.5
    saturation: 145
    aberrationIntensity: 2
    elasticity: 0.15
~~~

quality is the global quality ceiling. fullComponents is the allow-list for named full-quality components; the current theme names its desktop and mobile navigation navbar. articleQuality controls article cards independently. glass-heavy surfaces use the prominent visual mode. Conservative optical values are recommended for consistent performance across browsers.

### Appearance and accessibility

~~~yaml
params:
  appearance:
    defaultTheme: auto         # auto | light | dark
    enableThemeToggle: true
~~~

The theme follows prefers-color-scheme in auto mode and stores an explicit user choice in localStorage. prefers-reduced-motion: reduce disables or reduces decorative motion and advanced interaction without hiding core content.

## Content model

Create articles in a section listed by mainSection or mainSections, usually content/posts/:

~~~yaml
---
title: "A readable post"
date: 2026-01-01
description: "A short summary used by cards and metadata."
categories:
  - Notes
tags:
  - Hugo
  - Writing
image: "cover.jpg" # Page-bundle resource or a path under static/.
draft: false
---
~~~

Markdown supports headings, paragraphs, emphasis, links, blockquotes, ordered and unordered lists, nested lists, inline code, fenced code blocks, tables, horizontal rules, and images. Start article body headings at level 2 when the template already provides the page title as the main h1.

Page-bundle images are resolved before static paths for article images and Open Graph metadata. Images remain constrained to the content width.

## License

Hugo Theme Liquid is released under the MIT License. See [LICENSE](LICENSE) for the full license text.
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.