A multi-platform client that offers a user-friendly article editing interface and content management system for Hexo-based blogs. 为基于 Hexo 的博客,提供友好易用的文章编辑界面和内容管理系统的,开源博客软件。
An open-source blogging software that offers a user-friendly article editing interface and content management system for Hexo-based blogs.
English | 简体中文
Hexo is a fast, simple, and efficient blogging framework. It compiles and renders articles on the server, generating static pages that are then published to the internet, providing a smooth reading experience for visitors. However, Hexo’s content management approach, based on configuration and text files, is not particularly user-friendly for blog authors. For example, metadata used to organize blog content, such as categories and tags, is scattered at the beginning of each article, making it impossible to offer a real-time and global management interface. Editing metadata for a single article, such as categories, tags, update times, and publication statuses, requires manual editing in Yaml or JSON formats, which are different from Markdown syntax. This presents a significant mental burden for authors unfamiliar with Yaml/JSON syntax and the Front Matter organization format, including professional programmers.
To address these challenges, I designed HexoPress. Its core principle leverages cache files generated by Hexo’s own generators to display metadata information like categories and tags in a tree directory format on the editing interface in real-time. This allows authors to set categories and tags with a simple click and avoid the distraction of handling Front Matter data while editing articles, as the system organizes content automatically upon saving according to syntax. Additionally, HexoPress features a user-friendly Markdown editor that supports the Vim editing mode, favored by many programmers, making the writing process more enjoyable.
I used popular web development technologies such as Vue 3, Element Plus, and Vite 5, and packaged them into a desktop application with Electron, allowing it to run on multiple platforms including Windows, MacOS, and Linux. I hope this open-source software enhances your blogging experience. If you like this project, please recommend it to your friends and star us on GitHub. Your support is a great encouragement to us, thank you ❤️!
⭐ Star us on GitHub — it motivates us a lot!
Special thanks to WordPress, from which HexoPress draws its design inspiration for the management and editing interfaces. WordPress is the world’s finest blogging platform/software and has been my personal choice for blogging software for many years.
The client internally uses the API of Hexo version 7.1.1. Hexo blog versions above v7.0.0 can be used, while other versions have not been tested. Before using, make sure the blog directory has been backed up with git
.
Download for Apple Silicon: v1.2.0
Download for Intel Chip: v1.2.0
git clone https://github.com/charlestang/HexoPress.git
npm install
Run local dev server:
npm run dev
Run ESLint:
npm run lint
Run code format with prettier:
npm run format
Run tests:
npm run test
npm run package
npm run make
Visit https://github.com/charlestang/HexoPress/issues to submit issues.