Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including slush-hexo-theme with all npm packages installed. Try it out:

slush-hexo-theme lists no main file and has no index.js, so it can't be directly required. If this is a mistake, please let us know. It may however contain internal files that you can require manually:

// require("slush-hexo-theme/[??]")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

slush-hexo-theme v0.1.2

generate a hexo theme project


Generate a hexo theme

Yeoman version available too

Template choices:

  • ejs
  • nunjucks
  • pug
  • swig

Style choices:

  • stylus
  • sass
  • scss
  • less
  • css


  • hexo scripts
  • bower: .bowerrc, bower.json
  • npm: package.json
  • .gitignore
  • .editorconfig

Install globally

npm install --global slush
npm install --global slush-hexo-theme

How to use it

If you don't have a site yet create one with hexo init hexo-cli.

mkdir my-site
cd my-site
hexo init

Navigate to the directory you want to place the theme project in (most likely themes/).

# from the site root
cd themes

# make a new theme directory
mkdir my-theme
cd my-theme

# generate
slush hexo-theme

It will not automatically overwrite an existing file. Overwrites are confirmed with the user.

  1. Check _config.yml in your main blog directory
  • Set theme property to your theme name, activating this theme
  1. Check _config.yml in your theme directory
  • Change menu items if needed
  • Change stylesheet and scripts list if needed
  1. Navigate to your main blog directory
  2. hexo server --debug

Hexo renderers

It might be necessary to goto the blog directory and install a specific renderer for the template language you have chosen. Swig are built into Hexo.

# templates
npm install hexo-renderer-ejs
npm install hexo-renderer-njks
npm install hexo-render-pug

# styles
npm install hexo-renderer-stylus
npm install hexo-renderer-less
npm install hexo-renderer-sass



It's a community project. Want to help?

  • Fix a bug
  • GitHub star ⭐
  • npm star slush-hexo-theme
  • Do we need to implement any helpers?

Know another template language hexo users need?

  1. Fork
  2. Copy an existing template directory
  3. Port it to the new language
  4. Test
  5. Create pull request


# test the development build
# it's faster than prd script
npm run dev

# build before publishing
# prd = production build
npm run prd

# clean up the test site
npm run clean

npm run prd does everything needed:

  • clean
  • link
  • test

If you want to add a template language please copy one and port it so it keeps roughly the same structure.

Thank you contributors


  • Theme docs
  • Submit your theme
  • Slush docs
RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free