{{ . }}
11 | {{- else -}} 12 |{{ i18n "hello" }}.
13 | {{- end -}} 14 |{{ i18n "i-am" }} {{ .Site.Params.Author.name | default "Hallo" }}.
15 |{{- partial "introduction.html" . -}}
16 | 17 |├── layouts ├── 404.html ├── partials │ ├── header.html │ ├── footer.html │ ├── introduction.html │ └── head.html ├── _default │ └── baseof.html └── index.html ├── exampleSite ├── content │ └── .gitkeep └── config.toml ├── archetypes └── default.md ├── .gitattributes ├── images ├── tn.png └── screenshot.png ├── static ├── favicon.ico ├── favicon-16x16.png ├── favicon-32x32.png ├── apple-touch-icon.png ├── images │ └── portrait.jpg ├── android-chrome-192x192.png ├── android-chrome-512x512.png └── site.webmanifest ├── resources └── _gen │ └── assets │ └── scss │ └── scss │ ├── hallo.scss_11dec6d354e63d78237f08052de7276c.json │ ├── hallo.scss_d4f8b6498aaf27d34862c7e8a62b88f3.json │ ├── hallo.scss_d4f8b6498aaf27d34862c7e8a62b88f3.content │ └── hallo.scss_11dec6d354e63d78237f08052de7276c.content ├── i18n ├── nl.toml ├── en.toml ├── de.toml └── fr.toml ├── assets └── scss │ ├── hallo.scss │ └── hallo │ ├── _variables.scss │ ├── _base.scss │ └── _layout.scss ├── theme.toml ├── .travis.yml ├── LICENSE └── README.md /layouts/404.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exampleSite/content/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /layouts/partials/header.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /archetypes/default.md: -------------------------------------------------------------------------------- 1 | +++ 2 | +++ 3 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | resources/** -diff -merge 2 | resources/** linguist-generated=true -------------------------------------------------------------------------------- /images/tn.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmielH/hallo-hugo/HEAD/images/tn.png -------------------------------------------------------------------------------- /static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmielH/hallo-hugo/HEAD/static/favicon.ico -------------------------------------------------------------------------------- /images/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmielH/hallo-hugo/HEAD/images/screenshot.png -------------------------------------------------------------------------------- /static/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmielH/hallo-hugo/HEAD/static/favicon-16x16.png -------------------------------------------------------------------------------- /static/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmielH/hallo-hugo/HEAD/static/favicon-32x32.png -------------------------------------------------------------------------------- /static/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmielH/hallo-hugo/HEAD/static/apple-touch-icon.png -------------------------------------------------------------------------------- /static/images/portrait.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmielH/hallo-hugo/HEAD/static/images/portrait.jpg -------------------------------------------------------------------------------- /static/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmielH/hallo-hugo/HEAD/static/android-chrome-192x192.png -------------------------------------------------------------------------------- /static/android-chrome-512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EmielH/hallo-hugo/HEAD/static/android-chrome-512x512.png -------------------------------------------------------------------------------- /resources/_gen/assets/scss/scss/hallo.scss_11dec6d354e63d78237f08052de7276c.json: -------------------------------------------------------------------------------- 1 | {"Target":"css/style.css","MediaType":"text/css","Data":{}} -------------------------------------------------------------------------------- /resources/_gen/assets/scss/scss/hallo.scss_d4f8b6498aaf27d34862c7e8a62b88f3.json: -------------------------------------------------------------------------------- 1 | {"Target":"css/style.css","MediaType":"text/css","Data":{}} -------------------------------------------------------------------------------- /layouts/partials/footer.html: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /i18n/nl.toml: -------------------------------------------------------------------------------- 1 | [hello] 2 | other = "Hallo" 3 | 4 | [i-am] 5 | other = "Ik ben" 6 | 7 | [generator] 8 | other = "Gemaakt met Hugo en thema Hallo." -------------------------------------------------------------------------------- /i18n/en.toml: -------------------------------------------------------------------------------- 1 | [hello] 2 | other = "Hello" 3 | 4 | [i-am] 5 | other = "I am" 6 | 7 | [generator] 8 | other = "Made with Hugo using the Hallo theme." 9 | -------------------------------------------------------------------------------- /i18n/de.toml: -------------------------------------------------------------------------------- 1 | [hello] 2 | other = "Hallo" 3 | 4 | [i-am] 5 | other = "Ich bin" 6 | 7 | [generator] 8 | other = "Gemacht mit Hugo mit dem Thema Hallo." 9 | -------------------------------------------------------------------------------- /i18n/fr.toml: -------------------------------------------------------------------------------- 1 | [hello] 2 | other = "Bonjour" 3 | 4 | [i-am] 5 | other = "Je suis" 6 | 7 | [generator] 8 | other = "Fabriqué avec Hugo en utilisant le thème Hallo." 9 | -------------------------------------------------------------------------------- /layouts/_default/baseof.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {{- partial "head.html" . -}} 4 |
5 | {{- partial "header.html" . -}} 6 | {{- block "main" . }}{{- end }} 7 | {{- partial "footer.html" . -}} 8 | 9 | 10 | -------------------------------------------------------------------------------- /layouts/partials/introduction.html: -------------------------------------------------------------------------------- 1 | Hallo is a single-page Hugo theme to introduce yourself. Add a portrait, an introduction, several links, and you're set. Create a partial called introduction.html on your own site to replace this standard introduction. Create a file called portrait.jpg in static/images to replace the standard portrait. -------------------------------------------------------------------------------- /assets/scss/hallo.scss: -------------------------------------------------------------------------------- 1 | // Colours 2 | $color-background: {{ .Site.Params.colors.background | default "#6fcdbd" }}; 3 | $color-foreground: {{ .Site.Params.colors.foreground | default "#fff" }}; 4 | $color-hover: {{ .Site.Params.colors.hover | default "#333" }}; 5 | 6 | @import 'hallo/variables'; 7 | @import 'hallo/base'; 8 | @import 'hallo/layout'; 9 | -------------------------------------------------------------------------------- /assets/scss/hallo/_variables.scss: -------------------------------------------------------------------------------- 1 | // Fonts 2 | $sans-serif: Montserrat, 'Helvetica Neue', 'Segoe UI', Helvetica, Arial, sans-serif; 3 | 4 | // Responsive breaks 5 | $break-extra-small: 575px; 6 | $break-small: 576px; 7 | $break-medium: 768px; 8 | $break-large: 992px; 9 | $break-extra-large: 1200px; 10 | 11 | @mixin transition($args...) { 12 | -webkit-transition: $args; 13 | -moz-transition: $args; 14 | transition: $args; 15 | } 16 | -------------------------------------------------------------------------------- /static/site.webmanifest: -------------------------------------------------------------------------------- 1 | { 2 | "name": "", 3 | "short_name": "", 4 | "icons": [ 5 | { 6 | "src": "/android-chrome-192x192.png", 7 | "sizes": "192x192", 8 | "type": "image/png" 9 | }, 10 | { 11 | "src": "/android-chrome-512x512.png", 12 | "sizes": "512x512", 13 | "type": "image/png" 14 | } 15 | ], 16 | "theme_color": "#ffffff", 17 | "background_color": "#ffffff", 18 | "display": "standalone" 19 | } -------------------------------------------------------------------------------- /theme.toml: -------------------------------------------------------------------------------- 1 | # theme.toml template for a Hugo theme 2 | # See https://github.com/gohugoio/hugoThemes#themetoml for an example 3 | 4 | name = "Hallo" 5 | license = "MIT" 6 | licenselink = "https://github.com/EmielH/hallo-hugo/blob/master/LICENSE" 7 | description = "Hallo is a single-page Hugo theme to introduce yourself." 8 | homepage = "https://github.com/EmielH/hallo-hugo" 9 | tags = ["minimal", "clean", "responsive", "simple", "personal", "starter", "single page", "onepage", "Font Awesome", "landing page"] 10 | features = [] 11 | min_version = "0.43" 12 | 13 | [author] 14 | name = "Emiel Hollander" 15 | homepage = "https://www.emielhollander.nl" 16 | -------------------------------------------------------------------------------- /exampleSite/config.toml: -------------------------------------------------------------------------------- 1 | baseURL = "https://example.com/" 2 | languageCode = "en" 3 | defaultContentLanguage = "en" 4 | title = "Hallo" 5 | theme = "hallo" 6 | disableKinds = ["page", "section", "taxonomy", "taxonomyTerm"] 7 | 8 | [params.author] 9 | name = "Hallo" 10 | 11 | [params] 12 | 13 | [[params.links]] 14 | iconset = "fas" 15 | icon = "envelope" 16 | title = "E-mail" 17 | url = "mailto:mail@example.org" 18 | 19 | [[params.links]] 20 | icon = "github" 21 | title = "Github" 22 | url = "https://github.com/" 23 | 24 | [[params.links]] 25 | icon = "twitter" 26 | title = "Twitter" 27 | url = "https://twitter.com/" 28 | 29 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | env: 2 | - HUGO_VERSION="0.50" 3 | - HUGO_VERSION="0.51" 4 | - HUGO_VERSION="0.52" 5 | - HUGO_VERSION="0.53" 6 | - HUGO_VERSION="0.54.0" 7 | - HUGO_VERSION="0.55.6" 8 | - HUGO_VERSION="0.56.3" 9 | - HUGO_VERSION="0.57.2" 10 | - HUGO_VERSION="0.58.3" 11 | - HUGO_VERSION="0.59.1" 12 | - HUGO_VERSION="0.60.1" 13 | - HUGO_VERSION="0.61.0" 14 | 15 | install: 16 | - wget https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_${HUGO_VERSION}_Linux-64bit.tar.gz 17 | - tar xf hugo_${HUGO_VERSION}_Linux-64bit.tar.gz 18 | - mv hugo ~/bin/ 19 | - hugo version 20 | - gem install html-proofer 21 | 22 | script: 23 | - cd exampleSite 24 | - hugo -t hallo-hugo --themesDir ../.. 25 | - htmlproofer public --check-html --disable-external 26 | -------------------------------------------------------------------------------- /assets/scss/hallo/_base.scss: -------------------------------------------------------------------------------- 1 | html, 2 | body { 3 | color: $color-foreground; 4 | margin: 1rem; 5 | padding: 0; 6 | } 7 | 8 | html { 9 | font-family: $sans-serif; 10 | font-size: 16px; 11 | overflow-y: auto; 12 | } 13 | 14 | body { 15 | background-color: $color-background; 16 | } 17 | 18 | a { 19 | @include transition(color .2s ease-out); 20 | color: $color-foreground; 21 | 22 | &:hover { 23 | color: $color-hover; 24 | } 25 | } 26 | 27 | h1 { 28 | font-size: 9rem; 29 | } 30 | 31 | h2 { 32 | font-size: 3rem; 33 | font-weight: normal; 34 | } 35 | 36 | h3 { 37 | font-size: 2rem; 38 | font-weight: normal; 39 | } 40 | 41 | @media screen and (max-width: $break-large) { 42 | h1 { 43 | font-size: 15vw; 44 | } 45 | 46 | h2 { 47 | font-size: 2.5rem; 48 | } 49 | } 50 | 51 | img.portrait { 52 | box-sizing: border-box; 53 | border-radius: 50%; 54 | border: 10px solid $color-foreground; 55 | margin: 2em 3em; 56 | width: 100%; 57 | height: auto; 58 | max-width: 300px; 59 | max-height: 300px; 60 | } 61 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2018-2019 Emiel Hollander 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 9 | the Software, and to permit persons to whom the Software is furnished to do so, 10 | subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /resources/_gen/assets/scss/scss/hallo.scss_d4f8b6498aaf27d34862c7e8a62b88f3.content: -------------------------------------------------------------------------------- 1 | html,body{color:#fcfdf3;margin:1rem;padding:0}html{font-family:Montserrat,"Helvetica Neue","Segoe UI",Helvetica,Arial,sans-serif;font-size:16px;overflow-y:auto}body{background-color:#acbb21}a{-webkit-transition:color 0.2s ease-out;-moz-transition:color 0.2s ease-out;transition:color 0.2s ease-out;color:#fcfdf3}a:hover{color:#6b7515}h1{font-size:9rem}h2{font-size:3rem;font-weight:normal}h3{font-size:2rem;font-weight:normal}@media screen and (max-width: 992px){h1{font-size:15vw}h2{font-size:2.5rem}}img.portrait{box-sizing:border-box;border-radius:50%;border:10px solid #fcfdf3;margin:2em 3em;width:100%;height:auto;max-width:300px;max-height:300px}.column{flex:1}main .block{display:flex}main .block.introduction{margin-top:20vh;min-height:calc(100vh - 20vh)}main .column.left{text-align:end}main .column.right h1{margin-left:-10px;margin-bottom:0.4em}main .column.right h2{margin-left:-4px;margin-top:0}main .column.right .links{margin-top:2.5rem;font-size:1.5rem}main .column.right .links a{margin-right:0.5rem;text-decoration:none}@media screen and (max-width: 992px){main .block{flex-direction:column}main .block.introduction{margin-top:0}main .column.left{text-align:center}main .column.right h1{margin-top:0}main img.portrait{margin:0}}footer{display:flex;margin-top:3rem;font-size:0.75rem}@media screen and (max-width: 992px){footer{flex-direction:column}} 2 | -------------------------------------------------------------------------------- /layouts/index.html: -------------------------------------------------------------------------------- 1 | {{ define "main" }} 2 | 3 |{{- partial "introduction.html" . -}}
16 | 17 |Lorem ipsum
115 | ``` 116 | 117 | You can then add a link to this additional information in your site config, like so: 118 | 119 | ``` 120 | [params] 121 | [[params.links]] 122 | iconset = "fas" 123 | icon = "info-circle" 124 | title = "Additional information" 125 | url = "#info" 126 | ``` 127 | 128 | ### Internationalisation (i18n) 129 | 130 | Hallo supports using other languages than English. Language files for the texts Hallo uses are provided in the `i18n` directory. The default language is English. To switch languages, add the key `defaultContentLanguage` to your `config.toml` file. For example: 131 | 132 | ``` 133 | defaultContentLanguage = "nl" 134 | ``` 135 | 136 | To translate texts your site uses, add an `i18n` folder to your site. 137 | 138 | Feel free to submit pull requests for other translations of Hallo's texts. 139 | 140 | _[Hugo documentation for multilingual sites](//gohugo.io/content-management/multilingual/)_ 141 | 142 | ### Colors 143 | 144 | You can alter the colors of your website using configuration options. Add the following to the `[params]` section of your `config.toml` for an alternate color scheme: 145 | 146 | ``` 147 | [params.colors] 148 | background = "#81c6ff" 149 | foreground = "#edf7ff" 150 | hover = "#ffba82" 151 | ``` 152 | 153 | * `background`: Used as background color of the site. 154 | * `foreground`: Used for text and the border of the portrait. 155 | * `hover`: Used for hover of links. 156 | 157 | > **Warning: When using Hugo Basic, you need to perform additional steps to make custom colors work.** 158 | > 159 | > If you get the following error message while building your site, you're using Hugo Basic: 160 | > 161 | > `error: failed to transform resource: TOCSS: failed to transform "style.hallo.scss" (text/x-scss): this feature is not available in your current Hugo version` 162 | > 163 | > The SCSS needs to be transpiled for your custom colors, which is something Hugo Basic cannot do. For the standard colors, the transpiled SCSS comes with the theme. 164 | > 165 | > If you're stuck with Hugo Basic, e.g. because your Hugo site is generated on a server that only has Hugo Basic installed, you can get custom colors to work by performing the following steps. 166 | > 167 | > 1. Install Hugo Extended on your local machine. 168 | > 2. Generate your site locally by running `hugo` on your local machine. 169 | > 3. Commit the generated `resources` folder to the root folder of your site. This folder can be found inside the `public` folder after running `hugo`. 170 | > 171 | > Hugo Basic will then use this `resources` folder to find the transpiled SCSS. 172 | 173 | ### Greeting text 174 | 175 | By default, the theme uses the translation of the word 'Hello' for the language of your site. You can also choose to alter this text completely. To do so, add the parameter `greeting` to your `config.toml`, like so: 176 | 177 | ``` 178 | [params] 179 | greeting = "Greetings!" 180 | ``` 181 | 182 | ### Google Analytics 183 | 184 | The theme supports Google Analytics. To use Google Analytics, specify the parameter `googleAnalytics` in your `config.toml`. This will add the code for Google Analytics when you generate your site for production. It will not be included for any environment other than production (e.g. when using `hugo serve`). 185 | 186 | ## Acknowledgments 187 | 188 | Stock portrait photo obtained [here](https://www.pexels.com/photo/adult-beautiful-blonde-blur-324658/). 189 | 190 | ## License 191 | See [LICENSE](https://github.com/EmielH/hallo-hugo/blob/master/LICENSE). 192 | --------------------------------------------------------------------------------