NexT v6.0.0 here :triangular_flag_on_post:
NexT is a high quality elegant Hexo theme. It is crafted from scratch, with love.
[![gitter-image]][gitter-url] [![mnt-image]](https://github.com/theme-next/hexo-theme-next) [![travis-image]][travis-url] [![rel-image]][releases-url] [![hexo-image]][hexo-url] [![lic-image]](LICENSE) * [Chinese Documentation](README.cn.md) ## Live Preview * :heart_decoration: Muse scheme: [LEAFERx](https://leaferx.online) | [XiaMo](https://notes.wanghao.work) | [OAwan](https://oawan.me) * :six_pointed_star: Mist scheme: [Jeff](https://blog.zzbd.org) | [uchuhimo](http://uchuhimo.me) | [xirong](http://www.ixirong.com) * :pisces: Pisces scheme: [Vi](http://notes.iissnan.com) | [Acris](https://acris.me) | [Rainy](https://rainylog.com) * :gemini: Gemini scheme: [Ivan.Nginx](https://almostover.ru) | [Raincal](https://raincal.com) | [Dandy](https://dandyxu.me) More NexT examples [here](https://github.com/iissnan/hexo-theme-next/issues/119). ## Installation **1.** Change dir to **hexo root** directory. There must be `node_modules`, `source`, `themes` and other directories: ```sh $ cd hexo $ ls _config.yml node_modules package.json public scaffolds source themes ``` **2.** Get theme from GitHub. There are several variants to do it: ### Download [latest release version][releases-latest-url]. At most cases **stable**. Recommended for most users. [![curl-tar-wget-image]][curl-tar-wget-url] ```sh $ mkdir themes/next $ curl -s https://api.github.com/repos/iissnan/hexo-theme-next/releases/latest | grep tarball_url | cut -d '"' -f 4 | wget -i - -O- | tar -zx -C themes/next --strip-components=1 ``` ### Download [tagged release version][releases-url]. You must define version. Replace `v5.1.2` with any version from [tags list][tags-url]. [![curl-tar-image]][curl-tar-url] ```sh $ mkdir themes/next $ curl -L https://api.github.com/repos/iissnan/hexo-theme-next/tarball/v5.1.2 | tar -zxv -C themes/next --strip-components=1 ``` [![git-image]][git-url] ```sh $ git clone --branch v5.1.2 https://github.com/iissnan/hexo-theme-next themes/next ``` ### Download [latest master branch][download-latest-url]. May be **unstable**, but includes latest features. Recommended for developers. [![curl-tar-image]][curl-tar-url] ```sh $ mkdir themes/next $ curl -L https://api.github.com/repos/iissnan/hexo-theme-next/tarball | tar -zxv -C themes/next --strip-components=1 ``` [![git-image]][git-url] ```sh $ git clone https://github.com/iissnan/hexo-theme-next themes/next ``` Clone command will give you the **whole repository**. And in any time you can switch to any tagged release.\ Get tags list: ```sh $ cd themes/next $ git tag -l … v5.0.0 v5.0.1 v5.1.0 v5.1.1 v5.1.2 ``` For example, you want to switch on `v5.1.0` [tagged release version][tags-url]. Input the following command: ```sh $ git checkout tags/v5.1.0 Note: checking out 'tags/v5.1.0'. … HEAD now on 1f72f68... CSS: Remove global list-style setting of ul ``` And if you want to switch back on [master branch][commits-url], input this command: ```sh $ git checkout master ``` **3.** Set theme in main **hexo root config** `_config.yml` file: theme: next ### Bugs For those who also encounter **Error: Cannot find module 'hexo-util'** [issue](https://github.com/iissnan/hexo-theme-next/issues/1490), please check your NPM version. - `> 3`: Still not work. Please remove `node_modules` directory and reinstall using `npm install`. - `< 3`: Please add `hexo-util` explicitly via `npm install --save-dev hexo-util` to you site package deps. ## Update ```sh $ cd themes/next $ git pull ``` ### Bugs > Commit your changes or stash them before you can merge You must Commit, Stash or Discard local changes. See [here](https://stackoverflow.com/a/15745424/5861495) how to do it. ### Theme configurations using Hexo data files ([#328](https://github.com/iissnan/hexo-theme-next/issues/328)) Currently, it is not smooth to update NexT theme from pulling or downloading new releases. It is quite often running into conflict status when updating NexT theme via `git pull`, or need to merge configurations manually when upgrading to new releases. At present, NexT encourages users to store some options in site's `_config.yml` and other options in theme's `_config.yml`. This approach is applicable, but has some drawbacks: 1. Configurations are splited into two pieces 2. Users maybe confuse which place should be for options In order to resolve this issue, NexT will take advantage of Hexo [Data files](https://hexo.io/docs/data-files.html). Because Data files is introduced in Hexo 3, so you need upgrade Hexo to 3.0 (or above) to use this feature. If you prefer Hexo 2.x, you can still use the old approach for configurations. NexT is still compatible with Hexo 2.x. #### Benefits With this feature, now you can put all your configurations into one place (`source/_data/next.yml`), you don't need to touch `next/_config.yml`. If there are any new options in new releases, you just need to copy those options from `next/_config.yml`, paste into `_data/next.yml` and set their values to whatever you want. #### How to use this feature 1. Please ensure you are using Hexo 3 (or above) 2. Create an file named `next.yml` in site's `source/_data` directory (create `_data` directory if it did not exist) 3. Copy NexT theme options both in site's `_config.yml` and theme's `_config.yml` into `next.yml`. 4. Use `--config source/_data/next.yml` parameter to start server, generate or deploy.\ For example: `hexo clean --config source/_data/next.yml && hexo g --config source/_data/next.yml`. ## Features ### Multiple languages support, including: :cn: Simplified Chinese & Traditional Chinese.