2019-08-25 20:25:56 +02:00
# LoveIt Theme | Hugo
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
[中文 README ](README.zh.md )
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
**LoveIt** is a **clean** , **elegant** but **advanced** blog theme for [Hugo ](https://gohugo.io/ ).
It is based on the original [LeaveIt Theme ](https://github.com/liuzc/LeaveIt/ ) and [KeepIt Theme ](https://github.com/liuzc/LeaveIt/ ).
![Hugo Theme LoveIt ](exampleSite/static/images/Apple-Devices-Preview.png )
2019-08-06 17:49:02 +02:00
## Demo
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
To see this theme in action, here is a live [demo site ](https://hugo-loveit-en.netlify.com ) which is rendered with **LoveIt** theme.
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
Websites using **LoveIt** theme:
2019-03-11 16:39:26 +01:00
2019-08-06 17:49:02 +02:00
* [Dillon ](https://dillonzq.com )
2019-08-25 20:25:56 +02:00
* Yours
2019-03-11 16:39:26 +01:00
2019-08-06 17:49:02 +02:00
## Features
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
* Optimized for performance: 99/100 on mobile and 100/100 on desktop in [Google PageSpeed Insights ](https://developers.google.com/speed/pagespeed/insights )
* Desktop / Mobile layouts support
* Dark / Light mode
2019-02-03 12:30:34 +01:00
* Optimized SEO performance with a correct SEO SCHEMA based on JSON-LD
* A More coerent style beetwen page and sections
2019-08-25 20:25:56 +02:00
* Multilanguage support and I18N ready
2019-02-25 01:13:36 +01:00
* Pagination support
2019-08-25 20:25:56 +02:00
* [Google Analytics ](https://analytics.google.com/analytics ) support
* Disqus comment system support by [Disqus ](https://disqus.com )
* Gitalk comment system support by [Gitalk ](https://github.com/gitalk/gitalk )
* Valine comment system support by [Valine ](https://valine.js.org/ )
* Gravatar support by [Gravatar ](https://gravatar.com )
* Local Avatar support
* Up to 54 social sites supported
2019-03-14 11:40:45 +01:00
* Share post support
2019-03-24 10:20:09 +01:00
* Search engine verification support (Google, Bind, Yandex and Baidu)
2019-08-25 20:25:56 +02:00
* Automatically converted images with Lazy Load by [lazysizes ](https://github.com/aFarkas/lazysizes )
* Automatically highlighting code by chroma in Hugo
* Extended markdown syntax for [Font Awesome ](https://fontawesome.com/ ) icons
* Math formula support by [Katex ](https://katex.org/ )
* Diagram syntax shortcode support by [mermaid ](https://github.com/knsv/mermaid )
* Embedded music player support by [APlayer ](https://github.com/MoePlayer/APlayer ) and [MetingJS ](https://github.com/metowolf/MetingJS )
* Bilibili player support
* Kinds of admonitions shortcode support
* Custom align and float style shortcodes support
* Animated typing support by [TypeIt ](https://typeitjs.com/ )
* Animated coutdown support by [jQuery.countdown ](https://github.com/hilios/jQuery.countdown )
* Dynamic to top support by [Smooth Scroll ](https://github.com/cferdinandi/smooth-scroll )
* CDN support
2019-02-03 12:30:34 +01:00
* ...
2019-08-06 17:49:02 +02:00
## Getting Started
2019-02-03 12:30:34 +01:00
Clone this repository to your hugo theme directory.
```bash
2019-08-06 17:49:02 +02:00
cd themes
git clone https://github.com/dillonzq/LoveIt.git
2019-02-03 12:30:34 +01:00
```
2019-08-25 20:25:56 +02:00
Or, make this repository a submodule of your site directory.
```bash
git submodule add https://github.com/dillonzq/LoveIt.git themes/LoveIt
```
Next, open `config.toml` in the base of the Hugo site and ensure the theme option is set to KeepIt:
2019-08-06 17:49:02 +02:00
2019-02-03 12:30:34 +01:00
```bash
2019-08-06 17:49:02 +02:00
theme = "LoveIt"
2019-02-03 12:30:34 +01:00
```
2019-08-06 17:49:02 +02:00
2019-02-03 12:30:34 +01:00
For more information read the [official setup guide ](https://gohugo.io/documentation/ ) of Hugo.
2019-08-06 17:49:02 +02:00
## Site Configuration
2019-02-03 12:30:34 +01:00
Take a look in the `exampleSite` folder.
2019-08-25 20:25:56 +02:00
This directory contains an example config file and the content for the demo for `en` and `zh` languages.
It serves as an example setup for your website.
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
Copy the `config.toml` to the root directory of your website. Overwrite the existing config file if necessary.
2019-02-03 12:30:34 +01:00
2019-08-06 17:49:02 +02:00
## Content Suggestions
2019-02-03 12:30:34 +01:00
A few suggestions to help you get a good looking site quickly:
2019-08-25 20:25:56 +02:00
* Keep blog posts in the `content/posts` directory, for example: `content/posts/my-first-post.md`
* Keep static pages in the `content` directory, for example: `content/about.md`
* Keep media like images in the `static` directory, for example: `static/images/2019/9/screenshot.png`
2019-02-03 12:30:34 +01:00
2019-08-06 17:49:02 +02:00
## Customizing styles for your website
2019-02-03 12:30:34 +01:00
If you want to change some styling to fit your own website needs, you can edit them:
2019-08-25 20:25:56 +02:00
* `assets/css/_varibales.scss` : You can override the variables in `_variables.scss` to customize the style
* `assets/css/_custom.scss` : You can put your custom css in this file
2019-02-03 12:30:34 +01:00
2019-08-06 17:49:02 +02:00
## Favicons, Browserconfig, Manifest
2019-02-03 12:30:34 +01:00
It is recommended to put your own favicons
* apple-touch-icon.png (180x180)
* favicon-32x32.png (32x32)
* favicon-16x16.png (16x16)
* mstile-150x150.png (150x150)
* android-chrome-192x192.png (192x192)
* android-chrome-512x512.png (512x512)
2019-08-06 17:49:02 +02:00
into `/static` . They’ re easily created via [https://realfavicongenerator.net/ ](https://realfavicongenerator.net/ ).
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
Customize `browserconfig.xml` and `site.webmanifest` to set theme-color and background-color.
2019-02-03 12:30:34 +01:00
2019-08-06 17:49:02 +02:00
## Tips
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
### Set `production` environment when generating site
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
Because some features are only in production mode, so you need to add a `production` environment variables when generating your site.
2019-08-06 17:49:02 +02:00
2019-02-03 12:30:34 +01:00
```bash
2019-08-06 17:49:02 +02:00
HUGO_ENV=production hugo --gc --minify
2019-02-03 12:30:34 +01:00
```
2019-08-06 17:49:02 +02:00
### How to toggle dark-light mode
2019-08-25 20:25:56 +02:00
* You can click the circle icon to toggle dark-light mode. In the desktop version the circle icon is to the right and in the mobile version is positioned to the left, close to the site title.
* If you want to make your own theme toggle-able element, you can create an element with a class `.theme-switch` . See [here ](https://github.com/dillonzq/LoveIt/blob/master/assets/js/blog.js#L14 )
2019-02-03 12:30:34 +01:00
2019-08-06 17:49:02 +02:00
## Home Post model
2019-08-25 20:25:56 +02:00
If you want to show posts on index instead of a personal profile, just open `config.toml` , add the following line:
2019-08-06 17:49:02 +02:00
2019-02-03 12:30:34 +01:00
```toml
2019-08-06 17:49:02 +02:00
[params]
2019-08-25 20:25:56 +02:00
home_mode = "post"
2019-02-03 12:30:34 +01:00
```
2019-08-06 17:49:02 +02:00
## Add logo and cover for SEO
2019-02-03 12:40:34 +01:00
2019-08-25 20:25:56 +02:00
Add a logo image (127x40) and a cover image (800x600) in the `static` directory.
2019-02-03 12:30:34 +01:00
2019-08-06 17:49:02 +02:00
## Questions, ideas, bugs, pull requests
2019-02-03 12:30:34 +01:00
2019-08-06 17:49:02 +02:00
All feedback is welcome! Head over to the [issue tracker ](https://github.com/dillonzq/LoveIt/issues ).
## License
2019-03-11 16:39:26 +01:00
2019-08-25 20:25:56 +02:00
LoveIt is licensed under the MIT license. Check the [LICENSE file ](https://github.com/dillonzq/LoveIt/blob/master/LICENSE ) for details.
2019-02-03 12:30:34 +01:00
2019-08-25 20:25:56 +02:00
Thanks to the authors of following resources included in the theme:
* [Font Awesome ](https://fontawesome.com/ )
* [Animate.css ](https://daneden.github.io/animate.css/ )
2019-08-06 17:49:02 +02:00
* [lazysizes ](https://github.com/aFarkas/lazysizes )
2019-08-25 20:25:56 +02:00
* [Smooth Scroll ](https://github.com/cferdinandi/smooth-scroll )
* [TypeIt ](https://typeitjs.com/ )
* [jQuery ](https://github.com/jquery/jquery )
* [jQuery.countdown ](https://github.com/hilios/jQuery.countdown )
* [Katex ](https://katex.org/ )
* [mermaid ](https://github.com/knsv/mermaid )
* [APlayer ](https://github.com/MoePlayer/APlayer )
* [MetingJS ](https://github.com/metowolf/MetingJS )
* [Gitalk ](https://github.com/gitalk/gitalk )
* [Valine ](https://valine.js.org/ )
2019-08-06 17:49:02 +02:00
## Author
2019-02-03 12:30:34 +01:00
2019-08-06 17:49:02 +02:00
[Dillon ](https://dillonzq.com )