Hexo Theme Yet The Books (hexo-theme-yet-the-books) is a Hexo blog theme that reimagines a blog as a book collection: the homepage becomes a bookshelf, each category becomes a book, the category detail page becomes a table of contents, and each post becomes a single entry in that table. It is built for Hexo, the Node.js static site generator, and is configured through a _config.yet-the-books.yml file in the site root.
What is Hexo Theme Yet The Books?
Hexo Theme Yet The Books is a theme for the Hexo static site generator. It takes a Hexo site whose posts carry at least one category and renders the homepage as a bookshelf, category pages as book covers with tables of contents, and individual posts as content pages. The theme is published as an npm package (hexo-theme-yet-the-books) and can be installed with npm i hexo-theme-yet-the-books. It was developed by the Yet-The-Books community and is demonstrated at books.nexmoe.com and zain-books.vercel.app.
Key Features
- Bookshelf homepage — The site index displays posts grouped by category as books on a shelf, replacing the usual chronological feed.
- Book/table-of-contents metaphor — Each category is rendered as a book cover; opening a category shows its posts as a table of contents, so the reading path follows a library logic rather than a timeline.
- Per-post cover and color configuration — Front-matter supports
cover(an image path or URL) andcolor(red, purple, gray, blue, green) so each "book" can have a distinctive cover. - Flexible sorting — The
order_byfront-matter parameter controls how the table of contents is sorted, accepting values such asdate,-date,title, andurl; the theme-wide default comes fromtheme.order_by. - Category requirement built in — The theme explicitly notes that every article must have a category, which is what powers the book-to-category mapping.
- Stylus-based styling — The theme uses the Stylus preprocessor, and content is written in Markdown, matching Hexo's standard workflow.
- Community support — A dedicated QQ group is listed for theme users, and the README invites users to submit demo sites via GitHub Discussions.
Who is it for?
- Hexo bloggers who want a non-timeline layout — If you are tired of reverse-chronological feeds, this theme gives you a bookshelf structure that groups posts by topic.
- Writers with organized categories — Because posts must have a category, it suits writers who already think of their output as chapters or volumes.
- Readers who prefer browsing by topic — The book metaphor lets visitors browse a "shelf" of work instead of a stream of dates, which can work well for essay collections, tutorials, or documentation-style blogs.
What can you do with it?
- Organize an essay collection as a library — Assign each essay a category, and the homepage groups them as book covers; readers click a cover to see a table of contents.
- Build a topic-based tutorial site — Turn each category into a book of tutorials, with
order_byset to reading order (for example,order_by: date) so table-of-contents entries follow a sequence. - Give each series a visual identity — Use
coverandcolorfront-matter to differentiate series with different covers, making the bookshelf visually scannable.
How does it work?
- Install the theme with
npm i hexo-theme-yet-the-books. - Create a
_config.yet-the-books.ymlfile in your Hexo site root for theme settings. - Ensure every post has at least one category in its front-matter.
- Optionally set
cover,order_by, andcolorper post. - The theme then renders the homepage as a bookshelf and category pages as tables of contents.
FAQ
Do I need to configure the theme after installation?
After installing the npm package, you configure the theme by editing _config.yet-the-books.yml in the site root. The README states that once installed, you can use it directly, with configuration optional depending on your needs.
Does this theme work without categories?
No — the theme requires that every article have a category. The entire book metaphor (category as book, category page as table of contents) depends on categories, so posts without a category will break the expected structure.
What cover colors are available?
The color front-matter parameter accepts red, purple, gray, blue, and green, with red as the default. The cover parameter accepts an image directory or URL.
How can I sort the table of contents?
Use the order_by front-matter parameter on a post or set the theme-wide default in theme.order_by. Supported values include date, -date, title, and url.
Is there an example site or repository?
Yes. The README lists live demos at books.nexmoe.com and zain-books.vercel.app, plus a sample repository at github.com/nexmoe/books.




