Skip to content
Hexo theme based on the classic Octopress 2 skin
CSS HTML JavaScript
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.


What is this?

A Hexo theme based on the 'classic' theme for Octopress 2.

To install, clone this repository into a Hexo themes/octo folder and change theme in _config.yml to "octo".

Then copy themes/octo/_config-example.yml into themes/octo/_config.yml.

When updating, check _config-example for items you may want to port into your existing _config file.

Notes for Octopress users

Migrating from Octopress

Octopress and Hexo use the same post markup language, so moving from one blog to the other is actually rather straightforward. See

Writing in Hexo

You can use all the same great Octopress tags in your new Hexo blog:

# Heading

## Subheading

### Subsubheading
Welcome to [Hexo](!

<!-- more -->
## Pullquotes

My super pullquote. Pullquotes are right-aligned by default:

{% pullquote left %}
Left-hand pullquote
{% endpullquote %}

This right pullquote turns all the heads.

{% pullquote right %}
Right-hand pullquote
{% endpullquote %}

## Images

{% img class_names /path/to/image the_width the_height  [the_title [alt text]] %}

## JSFiddle embeds

{% jsfiddle my_fiddle_id html,css,result dark %}

The syntax is: jsfiddle ID, tab list, and theme ('dark' or 'light').

## Iframes

{% iframe http://my.smashing.url %}

## Codeblocks
{% codeblock %}
{% endcodeblock %}

## Github Gists

{% gist gist_id filename %}

## YouTube embeds

{% youtube video_id %}

Tags and categories

Hexo uses tags where Octopress uses categories. Hexo does have 'categories', but they are hierarchical: a page with categories [cooking, french] will be understood as belonging to category: cooking / subcategory: french cooking.

Theme options:

Change the way your blog works by editing your /themes/octo/_config.yml file.

If you don't have a _config.yml file, that's because you need to first copy it from _config-example.yml.

# Page language (html attribute)
language: en

# Main menu navigation items
  Blog: /
  Archives: /archives
  # Title: /pageName - create using `hexo new page 'pageName'`

# Post social sharing features
  twitter: your_twitter # set to your twitter handle

# Page sidebars
# Components will appear in the order they are specified
  recent: true # boolean to display 10 most recent posts
  featured: false # boolean to list all posts with tag 'featured'
  github: your_github # string to point to a Github profile | false to disable

# Disqus comments
  enabled: false
  shortname: your_website_shortname

# Analytics
googleAnalytics: false # false | string (UA-xxxx ID)

# Link to atom.xml in nav bar?
# You can use to generate these
atom: true

# Stylesheets loaded in the <head>

# Scripts loaded at the end of the body


This theme will use your source/images/favicon.png image as a favicon.


This theme doesn't currently support image galleries. Let me know if you need it.

You can’t perform that action at this time.