HexoBlog

hexo-theme-vivia — Hexo Blog Template

By saicaca

Vivia is a clean blog theme for Hexo, modified from the Landscape theme. It supports light and dark modes, custom theme colors and banners, and integrates Valine and Twikoo comments.

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-01View source

What stands out

A quick read of the recorded project description.

01

A minimalist blog theme modified from Hexo's official Landscape theme

02

Supports light and dark modes, custom theme colors, and custom banners

03

Responsive design, adapting to desktop and mobile

04

Comment system integrates Valine and Twikoo

05

Deployed via npm installation or Git clone into the themes directory

06

MIT license, allowing free use, modification, commercial use, and distribution

Template Details

Vivia is a Hexo blog theme developed by saicaca, positioned as a clean, minimalist blog appearance, with code modified from Hexo's official Landscape theme. The theme is published as the npm package hexo-theme-vivia, or you can clone the repository directly into the themes/vivia directory. Configuration is centralized in _config.vivia.yml in the blog root directory, where you can adjust appearance options such as theme colors and banners.

In terms of features, the theme implements light and dark mode switching, custom theme colors, custom banners, and responsive layout. The comment system supports Valine and Twikoo. The search and table of contents (TOC) components are still marked as incomplete in the repository's to-do list. After installation, you need to create an additional about page and set archive_generator.per_page to 0 in the blog's _config.yml; otherwise, the archive page will display at most ten posts.

Note that the repository README explicitly states that the project is no longer actively maintained, and the author recommends switching to their new Astro version, fuwari. The theme is released under the MIT license, allowing free use, modification, commercial use, and distribution, but third-party assets such as demo images, fonts, and icons require separate license verification; external service costs such as domain and hosting are not included.

HexoBlog

Is it right for your project?

Use Cases

  • Building a personal Hexo blog focused on article reading
  • Blog sites that need light/dark mode switching and custom theme colors
  • Hexo sites using Valine or Twikoo as the comment system
  • Hexo projects that want to make secondary modifications based on an existing theme

Suitable For

  • Developers using the Hexo static blog framework
  • Bloggers who prefer clean typography and do not need complex page structures
  • Users who can accept that the theme is no longer actively maintained and are willing to maintain it themselves
  • Users who need a permissive MIT license for personal or commercial projects

Getting started & customization

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

  1. 1

    Run npm install hexo-theme-vivia in the Hexo blog root directory, or clone the repository into themes/vivia and install the colorjs.io, stylus, and hexo-symbols-count-time dependencies

  2. 2

    Copy example_config.vivia.yml to the blog root directory and rename it to _config.vivia.yml

  3. 3

    Run hexo config theme vivia to set the theme to vivia

  4. 4

    Run hexo new page about to create the about page

  5. 5

    Set archive_generator.per_page to 0 in _config.yml; otherwise, the archive page will display at most ten posts

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 allowed.
  • 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

  • The project is no longer actively maintained, and the author recommends switching to the new Astro version fuwari; users bear subsequent maintenance and compatibility risks themselves.
  • The theme is a modified version of Hexo's official Landscape theme and is marked as work in progress in the README, so features may be incomplete.
  • You must set archive_generator.per_page to 0 in the blog's _config.yml; otherwise, the archive page will display at most ten posts.
  • The search and table of contents (TOC) components remain incomplete in the to-do list, and the theme does not provide these two features.
  • The comment system only integrates Valine and Twikoo; other comment systems are not supported. Using these comment services may require applying for an account or deploying a backend yourself.
  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's MIT license.
  • External services such as domain, hosting, database, payment, or AI may incur additional charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

This project is no longer actively maintained. If you are interested in this theme, it is recommended to use [the new Astro version](https://github.com/saicaca/fuwari).

Original README

A theme for <a href="https://hexo.io/">Hexo</a>, modified from <a href="https://github.com/hexojs/hexo-theme-landscape">Landscape</a>. (Work in progress)

Original README

Without this configuration, the archive page will only show up to ten articles at most.

Original README

- [ ] Search - [ ] TOC widget

Original README

- [x] Comments - [x] Valine - [x] Twikoo - [ ] Others

Original README
https://github.com/saicaca/hexo-theme-vivia/blob/main/LICENSEhttps://github.com/saicaca/hexo-theme-vivia/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-01. 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 · 76 / 100
Technologies
Hexo
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
2024-06-30
Screenshot last checked
2026-10-01

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 Hexo 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.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: 6f3986167bc5e0834b333e546a209eb26a39a4db04d43ccafc224d184fffad0b

2026-10-01T03:21:42.987Z

Source file / repository
> [!NOTE]
> This project is no longer actively maintained. If you are interested in this theme, it is recommended to use [the new Astro version](https://github.com/saicaca/fuwari).
> 
> 本项目已不再活跃维护,若对本主题感兴趣,建议使用[新的 Astro 版本](https://github.com/saicaca/fuwari)

<br>
<div align="center">
<img alt="Vivia Logo" src="https://raw.githubusercontent.com/saicaca/resource/main/vivia-img/logo.png" width="280px">
<br>
<br>
<strong>
<a href="https://saicaca.github.io/vivia-preview/">💻Live Demo</a>
|
<a href="https://github.com/saicaca/hexo-theme-vivia/blob/main/README.zh-CN.md">🌏中文</a>
|
<a href="https://github.com/saicaca/fuwari">✨Astro Version (NEW)</a>
</strong>
<br>
<br>
A theme for <a href="https://hexo.io/">Hexo</a>, modified from <a href="https://github.com/hexojs/hexo-theme-landscape">Landscape</a>. (Work in progress)
<br>
<br>
<a href="https://www.npmjs.com/package/hexo-theme-vivia">
   <img src="https://img.shields.io/npm/v/hexo-theme-vivia"/>
</a>
<a href="https://github.com/saicaca/hexo-theme-vivia/blob/main/LICENSE">
   <img src="https://img.shields.io/github/license/saicaca/hexo-theme-vivia"/>
</a>
</div>

# Preview

**[💻Live Demo](https://saicaca.github.io/vivia-preview/)**

![home](https://raw.githubusercontent.com/saicaca/resource/main/vivia-img/home.png)

![home_dark](https://raw.githubusercontent.com/saicaca/resource/main/vivia-img/home-dark.png)

# Install

> [!NOTE]
> All the following commands should be executed in the root directory of your Hexo blog

### 1. Install the Theme

Via npm (Recommended)

```bash
npm install hexo-theme-vivia
```

Via Git

```bash
# Clone the theme into the /themes/vivia directory
git clone https://github.com/saicaca/hexo-theme-vivia.git themes/vivia
  
# Install the required dependencies
npm install colorjs.io stylus hexo-symbols-count-time
```

### 2. Create the Theme Configuration File

Copy the example configuration file to your Hexo blog's root directory:

- If you installed the theme via npm, the file is located at `node_modules/hexo-theme-vivia/example_config.vivia.yml`.
- If you installed via Git, the file is in `themes/vivia/example_config.vivia.yml`.

After copying, rename this file to `_config.vivia.yml`.

### 3. Customize the Theme

Edit `_config.vivia.yml` and make any desired customizations.

### 4. Set `vivia` as the Theme

```bash
hexo config theme vivia
```

### 5. Create the `about` Page

```bash
hexo new page about
```

### 6. Disable the Pagination of Archive Page

Edit `_config.yml` and add the following lines:

```yaml
archive_generator:
  per_page: 0
```

Without this configuration, the archive page will only show up to ten articles at most.

# To-do list

- [x] Light / dark mode
- [x] Custom theme color
- [x] Custom banner
- [x] Responsive design
- [x] Comments
  - [x] Valine
  - [x] Twikoo
  - [ ] Others
- [ ] Search
- [ ] TOC widget

# Thanks

<a href="https://jb.gg/OpenSourceSupport">
   <img src="https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.png" alt="JetBrains Logo (Main) logo." width="200px" height="200px">
</a>

- [Hexo](https://hexo.io/zh-cn/index.html)
- [Landscape](https://github.com/hexojs/hexo-theme-landscape)
- [Color.js](https://colorjs.io/)
- [Font Awesome](https://github.com/FortAwesome/Font-Awesome)
- [Material Icons / Material Symbols](https://github.com/google/material-design-icons)
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.