A minimalist blog theme modified from Hexo's official Landscape theme
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.
Actual screenshot captured by the server browser.
All pages & views 3
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Supports light and dark modes, custom theme colors, and custom banners
Responsive design, adapting to desktop and mobile
Comment system integrates Valine and Twikoo
Deployed via npm installation or Git clone into the themes directory
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.
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
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
Copy example_config.vivia.yml to the blog root directory and rename it to _config.vivia.yml
- 3
Run hexo config theme vivia to set the theme to vivia
- 4
Run hexo new page about to create the about page
- 5
Set archive_generator.per_page to 0 in _config.yml; otherwise, the archive page will display at most ten posts
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis 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
https://github.com/saicaca/hexo-theme-vivia/blob/main/LICENSEhttps://github.com/saicaca/hexo-theme-vivia/blob/main/README.md- [x] Comments - [x] Valine - [x] Twikoo - [ ] Others
Original README
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/)**   # 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)
Explore similar templates
Compare previews and descriptions within the same stack and category.

hexo-theme-matery
hexo-theme-matery is a Material Design, responsive Hexo blog theme with homepage carousel, waterfall post list, timeline archive, word cloud tags, radar chart categories, and an about page.
Hexo · Blog

hexo-theme-cactus
Cactus is a responsive Hexo theme for personal websites and blogs, maintained by probberechts. It offers four color schemes (dark, light, white, classic), configurable navigation, homepage post lists, project lists, social links, and copyright year ranges.
Hexo · Blog

hexo-theme-volantis
Volantis is a blog theme for Hexo, distributed as the npm package hexo-theme-volantis and enabled by setting theme to volantis in the Hexo site's _config.yml. It requires Hexo 7.3+, hexo-cli 4.3+, Node.js 22.x LTS+, and npm 10.x LTS+.
Hexo · Blog

hexo-theme-aurora
Hexo Theme Aurora is a futuristic Hexo blog theme built around aurora gradients and a magazine-style grid layout.
Hexo · Blog

hexo-theme-Claudia
Claudia is a Hexo blog theme focused on a clean look and easy configuration. It automatically follows the device's dark mode and claims a 90+ Lighthouse score.
Hexo · Blog

hexo-theme-A4
hexo-theme-A4 is a minimalist Hexo blog theme that mimics the texture of A4 paper, emphasizing simplicity, small size, and minimal configuration.
Hexo · Blog
