Seje (寫嘢) is a Hexo blog theme that turns markdown posts into a styled website with podcast support, dark mode, and Chinese-locale features; it is deprecated in favor of Seje2.
What is Seje?
Seje is a theme for the Hexo static site generator, designed to convert Hexo-generated markdown content into a styled blog website. It is authored by GitHub user eatradish and distributed as a Git submodule from the eatradish/Seje repository. The project is explicitly deprecated; the maintainer directs all users to the successor theme Seje2 for continued updates.
Key Features
- Podcast episodes — Seje integrates the shikwasa audio player and pairs with the hexo-generator-podcast plugin so you can mark posts with category
podcast, add media and duration fields, and embed episodes using the provided pod player tag. - Dark mode — The theme supports automatic dark mode by default, can be forced on via
always_darkmode: true, or disabled entirely withdarkmode: false. - Chinese date display — Dates render as Chinese numerals like 二〇二一年十一月八日 by default; set
to_chinese_date: falseto switch to the standard 2021/11/08 format. - Syntax highlighting — Works with either Hexo's built-in
highlightmodule (requireshljs: true) or PrismJS, configured through the Hexo_config.yml. - Disqus comments — Set a
disqus_shortnameintheme_configto enable Disqus on posts. - Custom styling options — Favicon filename, font mirror (e.g.
fonts.loli.net), and CSS-like custom font stacks are all configurable, plus avertical: truelayout switch. - Menu and excerpts — Define homepage menu links (Home, Archives, About, RSS, Member) and choose between full content or summaries on the homepage via
excerpt.
Who is it for?
- Hexo bloggers who want a theme with podcast and dark mode without writing their own template code.
- Chinese-language bloggers who prefer dates and interface text in Chinese.
- Podcasters who use Hexo as their site generator and need a built-in audio player for episode posts.
What can you do with Seje?
- Podcasters: embed playable episodes in posts by adding the
podcastcategory andmedia,duration, andimagefront-matter, then using the pod player tag. - Bloggers: publish markdown posts and get a responsive blog layout with configurable menus, archive, about, and RSS pages.
- Developers: customize the theme's look by setting a favicon, custom fonts, and a font mirror for faster loading in China.
How does Seje work?
Installation is done by adding the theme as a Git submodule in your Hexo directory (git submodule add https://github.com/eatradish/Seje.git themes/Seje), then setting theme: Seje in your _config.yml. After that, any option you configure under theme_config in _config.yml controls the theme's behavior.
Pros and cons
- Pros: Feature-rich for a Hexo theme: podcast support, dark mode, Chinese dates, Disqus, multiple syntax-highlighting backends, and configurable typography.
- Cons: The project is explicitly deprecated; bugs are no longer fixed in Seje, and the maintainer recommends migrating to Seje2 for continued development.
Alternatives
- NexT — a popular Hexo theme known for its wide selection of schemes and style variants.
FAQ
Is Seje free to use?
Seje is a public theme repository on GitHub, and no price is mentioned anywhere in its documentation. Since it's distributed as a Git submodule and the repo is publicly accessible, it is effectively free to use under the terms of its repository.
Is Seje still maintained?
No. The project README states that Seje is deprecated, and the maintainer explicitly asks users to switch to Seje2. Bug fixes and new features are no longer expected for Seje.
How do I enable podcast support in Seje?
Install the hexo-generator-podcast plugin with Yarn, configure a podcast block in your Hexo _config.yml (including type, path, and URL), set theme_config.podcast: true, then create a post with category podcast and front-matter fields for media, type, length, and duration. Use the podplayer tag to embed the player.
How do I change the date format in Seje?
By default Seje displays dates in Chinese numerals, e.g. 二〇二一年十一月八日. To switch to the standard numeric format, set to_chinese_date: false in your theme_config.
Does Seje work with PrismJS?
Yes. To use PrismJS instead of the default Hexo highlighter, disable Hexo's highlight and enable prismjs with preprocess: true and optional line_number settings in your _config.yml.







