English | 简体中文
Frame is a minimal hexo theme. Inspired by traditional paintings and their frames, Frame is designed to showcase personal blogs, profiles, or portfolios in a concise and elegant way.
Getting started
Installation
If this is your first time using hexo, please go to the official hexo website to install and initialize your hexo project. Then, clone the theme in your hexo project:
1 | # go to your hexo theme folder |
Configuration
Go to the hexo configuration file config.yml
, and change the following theme settings:
1 | theme: frame |
Run Server
Now that Frame is all set up 👌. You can test the theme through:
1 | hexo server |
Color Mode
Frame provides 3 color modes: default, classic and dark.
To change the color mode, go to the config.yml
file under the frame
theme folder, and modify the following settings:
1 | # color mode: default / classic / dark |
Gallery View
Frame provides a gallery view, where blog posts are presented with their featured images and tags. Simply add a category “gallery” to your post, then it would be listed in the gallery view.
1 | categories: |
The featured image of the post can also be added to the Front-matter of the post:
1 | featured_image: /path/to/your/image.jpg |
Profile Page
The profile page, or the home page, is the very first page of your site. By default, there is a title, some body text, several links and a profile image on this page. You can customize the content of your profile at the config.yml
file of the theme:
1 | # profile |
In case you prefer to customize your profile page, go to frame/layout/pages/profile.ejs
and modify the layout and style of your own page, have fun 🙌
Tag Page
Frame provides a tag cloud on the /tag/
page, which contains all possible tags in your blog. In order to set up the tag cloud, you need to create a hexo page named tag
.
1 | hexo new page tag |
Inside the source/tag/index.html
file, type the following:
1 | --- |
Configurations
Header
The header is simply consist of a site logo and a navigation menu, you can change those content at the config.yml
file under the theme folder. You can upload an image as the site logo, otherwise it would be your site name.
1 | # header |
Footer
You can also customize the content of your footer at the config.yml
file:
1 | # footer |
Favicon
Add your own favicon of the website at the frame/source/
folder, then configure it at the config.yml
file:
1 | # favicon |
Math
In case you would like to use math equations in your blog, go to the config.yml
file and turn on the MathJax tool:
1 | # mathjax setting |
Note: if you haven’t install the hexo math plugin, you need to install it first:
1 | npm i hexo-math --save |
Blog Comments
Frame now supports third-party comment systems: valine and disqus. A detailed description can be found in this post.
Local Search
Frame now supports local search with the hexo plugin hexo-generator-searchdb. A detailed description can be found in this post.
Lisense
This project is released under MIT License.
All the images used in the demo site are the works from Claude Monet (1840 - 1926), which is considered to be in the public domain in its country of origin and other countries and areas.