1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
|
# Hugo Theme Mini
English | [简体中文](https://github.com/nodejh/hugo-theme-mini/tree/master/README-zh_CN.md)
A fast, minimalist and responsive hugo theme.
![./images/screenshot.png](https://raw.githubusercontent.com/nodejh/hugo-theme-mini/master/images/screenshot.png)
- [Online demo](https://nodejh.github.io/hugo-theme-mini)
- [Example Site Source](https://github.com/nodejh/hugo-theme-mini/tree/master/exampleSite)
Features:
- Fast
- Minimalist
- Responsive
- Archive
- Tags
## 1. Installation
### 1.1 As a Hugo Module (recommended)
> ⚠️ If you installed a [Hugo binary](https://gohugo.io/getting-started/installing/#binary-cross-platform), you may not have Go installed on your machine. To check if Go is installed:
> ```
> $ go version
> ```
> Go modules were considered production ready in v1.14. [Download Go](https://golang.org/dl/).
1. From your project's root directory, initiate the hugo module system if you haven't already:
```bash
$ hugo mod init github.com/<your_user>/<your_project>
```
2. Add the theme's repo to your `config.yaml`:
```yaml
theme:
- github.com/nodejh/hugo-theme-mini
```
### 1.2 As Git Submodule
1. Inside the folder of your Hugo site run:
```bash
$ git submodule add https://github.com/nodejh/hugo-theme-mini.git themes/mini
```
2. Add the theme's directory to your `config.yaml`:
```yaml
theme: mini
```
For more information read the official [setup guide](//gohugo.io/overview/installing/) of Hugo.
## 2. Getting started
After installing the theme successfully it requires a just a few more steps to get your site running.
### 2.1 The config file
Take a look inside the [`exampleSite`](https://github.com/nodejh/hugo-theme-mini/tree/master/exampleSite) folder of this theme. You'll find a file called [`config.yaml`](https://github.com/nodejh/hugo-theme-mini/blob/master/exampleSite/config.yaml). To use it, copy the [`config.yaml`](https://github.com/nodejh/hugo-theme-mini/blob/master/exampleSite/config.yaml) in the root folder of your Hugo site. Feel free to change the strings in this theme.
> ⚠️ You may need to delete the line: `themesDir: ../../`
### 2.2 Default Content Language
You can set default content language by `defaultContentLanguage`:
```yaml
defaultContentLanguage: en
```
Default is `en`. Now support:
- `en`: English
- `zh`: Chinese
- `nl`: Dutch
- `fr`: French
- `es`: Spanish
More about multiple languages: [Multilingual Mode](https://gohugo.io/content-management/multilingual/).
### 2.3 Add Comments
To enable comments, add following to your config file:
- Disqus shortname: `disqusShortname: your-disqus-shortname`
- Enable Comment:
```yaml
params:
enableComments: true
```
### 2.4 Google Analytics
To enable google analytics, add following to your config file:
- Google Analytics ID: `googleAnalytics: your-google-analytics-id`
- Enable Google Analytics:
```yaml
params:
enableGoogleAnalytics: true
```
### 2.5 Logo and favicon
You can replace the log in the top of each page and favicon with your own images. To do that put your own logo and favicon into the `images` directory of your website static directory, then named them `avatar.png` and `favicon.ico`. For example:
```
- content
- static
└── images
├── avatar.png
└── favicon.ico
```
### 2.6 Nearly finished
In order to see your site in action, run Hugo's built-in local server.
```bash
$ hugo server
```
Now enter http://localhost:1313 in the address bar of your browser.
### 2.7 Production
To run in production (e.g. to have Google Analytics show up), run HUGO_ENV=production before your build command. For example:
```bash
HUGO_ENV=production hugo
```
Note: The above command will not work on Windows. If you are running a Windows OS, use the below command:
```bash
set HUGO_ENV=production
hugo
```
## 3. Optional Configuration
### 3.1 Table of Content
To enable table of content, you could set `showToc` to `true`.
For example:
```yaml
showToc: true
```
### 3.2 Disable Comments on a single post
You can set `enableComments` to `false` in front matter to disable disqus comments on a single post.
For example:
```yaml
---
title: Some title
enableComments: false
---
```
### 3.3 Custom CSS and JS
You can put your custom css and js files to `static` directory, or use remote css and js files which start with `http://` or `https://`.
For example:
```yaml
customCSS:
- css/custom.css # local css in `static/css/custom.css`
- https://example.com/custom.css # remote css
customJS:
- js/custom.js # local js in `static/js/custom.js`
- https://example.com/custom.js # remote js
```
### 3.4 Math Typesetting
Mathematical notation is enabled by [KaTeX](https://katex.org/).
- To enable KaTex globally set the parameter `math` to `true` in project’s configuration
- To enable KaTex on a per page basis include the parameter `math` to `true` in content files
### 3.5 Hidden Post Summary in Home Page
To hidden post summary in home page, you could set `hiddenPostSummaryInHomePage` to `true`, default is `false`.
For example:
```yaml
hiddenPostSummaryInHomePage: true
```
## License
[MIT](https://github.com/nodejh/hugo-theme-mini/blob/master/LICENSE.md)
|