A Hexo-based static blog with the author's custom theme themes/jeremy-blog-hexo
personal-blog — Hexo Blog Template
By puremana
A Hexo-based personal blog template that includes the author's custom theme and integrates Firebase Hosting and Functions.
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 2
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Integrates Firebase Hosting and Firebase Functions for deployment to Firebase
Provides post search via Algolia, indexing with the hexo algolia command
The README explicitly warns that hexo generate under NodeJS v14 to v16 produces an empty index.html, so NodeJS 12 is required for builds
Code is under the MIT License, allowing free use, modification, commercial use, and distribution
Template Details
This is a personal blog project built with Hexo by Jeremy Shaw. The repository contains a fully custom Hexo theme located in the themes/jeremy-blog-hexo directory; the page layout and styling are determined by this theme rather than Hexo's default theme.
Beyond static site generation, the project also integrates Firebase: it uses Firebase Hosting to host the site and provides dynamic capabilities through Firebase Functions; search functionality relies on Algolia and requires running the hexo algolia command to index posts.
Two limitations should be noted before use: first, the README explicitly states that running hexo generate under NodeJS v14 to v16 produces an empty index.html file, so builds must use NodeJS 12; second, on first use, _config.yml.example must be renamed to _config.yml and configured.
Regarding licensing, the code is under the MIT License and may be used, modified, used commercially, and distributed for free, provided the copyright notice and license text are retained; costs for third-party assets such as demo images, fonts, and icons, as well as external services like Firebase and Algolia, must be verified separately.
Is it right for your project?
Use Cases
- Building a personal technical or lifestyle blog and publishing posts
- Hosting a static blog on Firebase Hosting and extending dynamic features with Functions
- Adding Algolia full-text search to a blog
- Using this custom theme as a base to create a Hexo site with a personal style
Suitable For
- Developers familiar with Hexo commands and YAML configuration
- Users willing to configure their own Firebase and Algolia accounts and keys
- Teams or individuals needing blog code that can be freely modified and used commercially under the MIT License
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Rename _config.yml.example to _config.yml and fill in site and third-party service configuration
- 2
Use NodeJS 12 for builds to avoid hexo generate producing an empty index.html under NodeJS v14 to v16
- 3
Run hexo server for local preview and hexo generate to produce static files
- 4
Search requires configuring Algolia first and running hexo algolia to build the index
- 5
Configure the Firebase CLI before deployment and verify Firebase and Algolia quotas and charges yourself
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 applies to that version's code and does not mean external services or third-party assets are free.
Must comply with when using
- The code in this version may be used, modified, used commercially, and distributed for free.
- 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
- Build limitation: running hexo generate under NodeJS v14 to v16 produces an empty index.html file; this project must be built with NodeJS 12.
- Configuration requirement: before use, _config.yml.example must be renamed to _config.yml and the site configuration filled in.
- External service dependency: search relies on Algolia, requiring an Algolia account and running hexo algolia to build the index, which may incur third-party service fees.
- External service dependency: deployment and dynamic features rely on Firebase Hosting and Firebase Functions, requiring a Firebase account and potentially incurring fees.
- The README mentions Firebase integration; before enabling related dynamic features, configure it yourself and verify Firebase quotas and charges.
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; the code's MIT License alone is not sufficient to determine this.
- External services such as domains, hosting, databases, payments, or AI may incur separate charges.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
There is currently an issue whereby `hexo generate` generates empty index.html files when using NodeJS v14 -> v16. Please use NodeJS 12 to build this project.
Original README
_To setup the configuration, please rename `_config.yml.example` to `_config.yml`._
Original README
Index the posts in Algolia for search functionality
Original README
https://github.com/puremana/personal-blog/blob/master/licensehttps://github.com/puremana/personal-blog/blob/master/README.mdUses Firebase [Hosting](https://firebase.google.com/docs/hosting/) and [Functions](https://firebase.google.com/docs/functions/).
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 · 80 / 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
- 2026-08-09
- 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: 7fb758e0779560fdcc0b5fef4dade20435340c95dc4888660592eabce34fdc8f
2026-10-01T03:12:25.620Z
Source file / repository# Personal Blog My personal Jeremy Shaw blog made using [Hexo](https://hexo.io/). Uses Firebase [Hosting](https://firebase.google.com/docs/hosting/) and [Functions](https://firebase.google.com/docs/functions/). Uses an entirely custom Hexo theme which can be found in `themes/jeremy-blog-hexo`.  *Screenshot of an example blog post layout* ## Warning There is currently an issue whereby `hexo generate` generates empty index.html files when using NodeJS v14 -> v16. Please use NodeJS 12 to build this project. ## Commands View all Hexo commands at [https://hexo.io/docs/commands](https://hexo.io/docs/commands) View all Firebase commands at [https://firebase.google.com/docs/cli/](https://firebase.google.com/docs/cli/) _To setup the configuration, please rename `_config.yml.example` to `_config.yml`._ Start the server ``` bash hexo server ``` Generate static files ``` bash hexo generate ``` Create new article ``` bash hexo new [layout] <title> ``` ``` bash hexo new post "Example Post" ``` Clean the cache and generated files ``` bash hexo clean ``` Index the posts in Algolia for search functionality ``` bash hexo algolia ``` Start the local Firebase server ``` bash firebase serve ``` Deploy to Firebase ``` bash firebase deploy ``` ## License MIT © [Jeremy Shaw](https://jeremyshaw.co.nz)
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
