Compare commits

...

61 Commits

Author SHA1 Message Date
Mark Dumay
838e73c380 Merge pull request #404 from gethinode/develop
Bump dependencies
2023-08-10 14:21:43 +02:00
Mark Dumay
d57a646a27 Merge branch 'main' into develop 2023-08-10 14:14:24 +02:00
mark
e27d760123 Bump dependencies 2023-08-10 14:08:41 +02:00
Mark Dumay
f74cd1a1e6 Merge pull request #403 from gethinode/develop
Refine translations
2023-08-10 13:53:11 +02:00
Mark Dumay
c226700c6d Merge branch 'main' into develop 2023-08-10 13:44:43 +02:00
mark
c3ca11b05d Bump package version 2023-08-10 13:43:59 +02:00
mark
164d86e5b0 Refine photo credits 2023-08-10 13:19:39 +02:00
mark
61e692f5ac Drop Dutch translation 2023-08-10 13:19:00 +02:00
mark
47d68f7710 Clean up main translations 2023-08-10 13:01:01 +02:00
mark
6dd6f3bc45 Show missing i18n warnings 2023-08-10 11:21:16 +02:00
mark
b229d70fab Converge page not found into single i18n string 2023-08-10 11:20:25 +02:00
mark
c4d8eb5eea Add reference button translations 2023-08-10 11:19:37 +02:00
mark
ac6ebc6b57 Support optional reference arg for section button 2023-08-10 11:18:46 +02:00
mark
2a2d564a13 Always use number of columns as defined in config 2023-08-10 10:43:27 +02:00
mark
a29c903a95 Fix offset of 404 container 2023-08-10 09:47:37 +02:00
mark
7b54eb5cdf Fix content of headless pages 2023-08-10 09:17:20 +02:00
mark
7e6d2b40a3 Fix typo in variable 2023-08-10 07:57:12 +02:00
mark
b0f0418207 Refine rendering of short release button 2023-08-10 07:22:31 +02:00
mark
98d7611236 Support size arg 2023-08-10 07:22:02 +02:00
mark
2119b05429 Support inline arg 2023-08-10 07:21:16 +02:00
mark
dd15e0eb37 Remove whitespace 2023-08-10 06:06:14 +02:00
mark
9e1f79a3b5 Use i18n for release state 2023-08-10 05:51:51 +02:00
mark
65be02a837 Remove path prefix 2023-08-10 05:35:50 +02:00
Mark Dumay
2a3cab631d Merge pull request #402 from gethinode/develop
Fix incorrect partial call
2023-08-09 17:50:28 +02:00
mark
e6605764bc Bump package version 2023-08-09 17:42:32 +02:00
mark
9fbccab1b5 Fix incorrect partial call 2023-08-09 17:30:40 +02:00
Mark Dumay
6f6908f30b Merge pull request #401 from gethinode/develop
Streamline initial setup
2023-08-09 17:19:58 +02:00
mark
1cf5fad731 Fix build example site 2023-08-09 15:40:36 +02:00
mark
75dc930abb Fix build command 2023-08-09 15:29:43 +02:00
mark
8d0adf5a28 Add example site 2023-08-09 15:21:20 +02:00
mark
7a981950f5 Update build env 2023-08-09 15:21:09 +02:00
Mark Dumay
da1c738671 Merge branch 'main' into develop 2023-08-09 15:10:22 +02:00
Mark Dumay
8fbdd27e1c Merge pull request #400 from markdumay/develop
Streamline initial setup
2023-08-09 15:09:06 +02:00
Mark Dumay
631cd979b0 Merge branch 'develop' into develop 2023-08-09 15:08:48 +02:00
mark
de9c00a6ec Reset package name 2023-08-09 15:06:05 +02:00
mark
4de1b7dce7 Update package release 2023-08-09 15:02:31 +02:00
mark
e0f464dc7d Ignore public files of example site 2023-08-09 15:01:44 +02:00
mark
5b91945824 Include example site in scripts 2023-08-09 15:01:26 +02:00
mark
e7bdd81136 Create example site 2023-08-09 15:00:55 +02:00
mark
dbd1b731bc Configure minimal initial site 2023-08-09 08:36:19 +02:00
mark
097f041765 Use all root sections by default 2023-08-09 08:16:03 +02:00
mark
f283e329a7 Applu default style to card group items 2023-08-09 08:15:23 +02:00
github-actions[bot]
ffbc775446 Merge pull request #397 from gethinode/dependabot/npm_and_yarn/hugo-bin-0.113.0
Bump hugo-bin from 0.112.1 to 0.113.0
2023-08-08 13:35:46 +00:00
dependabot[bot]
fedb652e1e Bump hugo-bin from 0.112.1 to 0.113.0
Bumps [hugo-bin](https://github.com/fenneclab/hugo-bin) from 0.112.1 to 0.113.0.
- [Release notes](https://github.com/fenneclab/hugo-bin/releases)
- [Commits](https://github.com/fenneclab/hugo-bin/compare/v0.112.1...v0.113.0)

---
updated-dependencies:
- dependency-name: hugo-bin
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-08 13:29:37 +00:00
mark
503a7f7410 Adapt new social params 2023-08-08 12:58:57 +02:00
mark
a693508e24 Ignore empty tagline 2023-08-08 12:58:29 +02:00
mark
3ba3f13005 Use summary when description is unavailable 2023-08-08 12:57:56 +02:00
mark
66f5904893 Support new thumbnail metadata 2023-08-08 12:56:19 +02:00
mark
27848998d5 Add default archetype 2023-08-08 12:31:46 +02:00
mark
e2e9bb421f Rewrite featured partial to use markdown content 2023-08-08 10:19:15 +02:00
mark
5e32ac2a04 Add endorsement 2023-08-08 10:16:54 +02:00
mark
efbaa6ce4f Remove empty line 2023-08-08 10:13:08 +02:00
mark
60821fc0c3 Add default title for more button 2023-08-06 12:49:28 +02:00
mark
e25edd77b0 Use all sections by default 2023-08-06 12:20:14 +02:00
mark
2ac190723e Remove superfluous description variable 2023-08-06 12:19:55 +02:00
mark
775a4a4b2a Use summary when description is unavailable 2023-08-06 12:19:05 +02:00
mark
84d6758b7a Use summary when description is unavailable 2023-08-06 12:17:47 +02:00
mark
1031fbd660 Move content to example site 2023-08-06 11:44:06 +02:00
mark
80d43bed2d Fix NL translation of projects title 2023-08-06 08:55:42 +02:00
mark
094ba86f47 Update package name 2023-08-06 07:23:06 +02:00
Mark Dumay
244911614d Merge pull request #391 from gethinode/main
Sync with main
2023-08-05 17:39:45 +02:00
76 changed files with 1012 additions and 892 deletions

View File

@@ -27,3 +27,4 @@ jobs:
cache-dependency-path: '**/package-lock.json' cache-dependency-path: '**/package-lock.json'
- run: npm ci - run: npm ci
- run: npm run build - run: npm run build
- run: npm run build:example

2
.gitignore vendored
View File

@@ -1,5 +1,5 @@
/_vendor /_vendor
/public public/
resources/ resources/
node_modules/ node_modules/

View File

@@ -1,2 +1,16 @@
+++ ---
+++ # author:
title: {{ replace .Name "-" " " | title }}
date: {{ .Date }}
draft: true
# layout:
# description:
# tags:
# icon:
# thumbnail:
# url:
# author:
# authorURL:
# origin:
# originURL:
---

View File

@@ -18,6 +18,7 @@
@import "components/clipboard.scss"; @import "components/clipboard.scss";
@import "components/command.scss"; @import "components/command.scss";
@import "components/comments.scss"; @import "components/comments.scss";
@import "components/feature.scss";
@import "components/navbar.scss"; @import "components/navbar.scss";
@import "components/img.scss"; @import "components/img.scss";
@import "components/pagination.scss"; @import "components/pagination.scss";

View File

@@ -0,0 +1,3 @@
.feature {
margin-top: 0.3 * $navbar-offset;
}

View File

@@ -6,12 +6,13 @@ enableGitInfo = true
# toml-docs-end main # toml-docs-end main
# additional settings # additional settings
googleAnalytics = "G-T85PPZ36GN" # googleAnalytics = "G-xxxxxxxxxx"
baseURL = "https://demo.gethinode.com/" baseURL = "https://example.com/"
canonifyURLs = false canonifyURLs = false
enableEmoji = true enableEmoji = true
enableRobotsTXT = true enableRobotsTXT = true
enableInlineShortcodes = true enableInlineShortcodes = true
summaryLength = 20
# prevent build failures when using Hugo's Instagram shortcode due to deprecated Instagram API. # prevent build failures when using Hugo's Instagram shortcode due to deprecated Instagram API.
# See https://github.com/gohugoio/hugo/issues/7228#issuecomment-714490456 # See https://github.com/gohugoio/hugo/issues/7228#issuecomment-714490456
@@ -24,7 +25,7 @@ timeout = "180s"
# toml-docs-start language # toml-docs-start language
languageCode = "en-us" languageCode = "en-us"
defaultContentLanguage = "en" defaultContentLanguage = "en"
defaultContentLanguageInSubdir = true defaultContentLanguageInSubdir = false
# toml-docs-end language # toml-docs-end language
# toml-docs-start redirect # toml-docs-start redirect

View File

@@ -1,31 +1,15 @@
# toml-docs-start lang-main # toml-docs-start lang-main
[en] [en]
languageName = "English" languageName = "English"
contentDir = "content/en" contentDir = "content"
weight = 1 weight = 1
# toml-docs-end lang-main # toml-docs-end lang-main
# toml-docs-start lang-param # toml-docs-start lang-param
[en.params.head] [en.params.head]
tagline = "A Hugo Theme" tagline = "A Hugo Theme"
[en.params.feature] [en.params.social]
link = "about" title = "Follow me"
caption = "About" caption = "I work on everything coding and tweet developer memes"
[en.params.footer] [en.params.footer]
license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)." # license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
socialTitle = "Follow me"
socialCaption = "I work on everything coding and tweet developer memes"
# toml-docs-end lang-param # toml-docs-end lang-param
[nl]
languageName = "Nederlands"
contentDir = "content/nl"
weight = 2
[nl.params.head]
tagline = "Een Hugo Thema"
[nl.params.feature]
link = "over-mij"
caption = "Over mij"
[nl.params.footer]
license = "Gelicenseerd onder Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
socialTitle = "Volg mij"
socialCaption = "Ik doe aan programmeren en tweet memes"

View File

@@ -1,34 +1,12 @@
[[main]] [[main]]
name = "About" name = "Home"
pageRef = "/about/" pageRef = "/"
weight = 10 weight = 10
[[main]]
name = "Blog"
pageRef = "/blog/"
weight = 20
[[main]]
name = "Projects"
pageRef = "/projects/"
weight = 30
[[main]]
name = "Sample project"
pageRef = "/projects/sample-project/"
parent = "Projects"
weight = 1
[[main]]
name = "Another project"
pageRef = "/projects/another-project/"
parent = "Projects"
weight = 2
[[main]] [[main]]
name = "Tags" name = "Tags"
pageRef = "/tags/" pageRef = "/tags"
weight = 40 weight = 20
[[social]] [[social]]
name = "LinkedIn" name = "LinkedIn"

View File

@@ -5,6 +5,7 @@
enableDarkMode = true enableDarkMode = true
modes = ["light", "dark"] modes = ["light", "dark"]
canonifyAssetsURLs = false canonifyAssetsURLs = false
endorse = true
[main.externalLinks] [main.externalLinks]
cue = false cue = false
tab = false tab = false
@@ -37,8 +38,7 @@
# toml-docs-start home # toml-docs-start home
[home] [home]
sections = ["blog", "projects"] # sections = ["posts"]
featurePhoto = "/img/sunrise.jpg" # source: https://unsplash.com/photos/ZX6BPboJrYk
fullCover = false fullCover = false
centerHeadline = false centerHeadline = false
style = "" style = ""
@@ -102,37 +102,21 @@
# toml-docs-end sharing # toml-docs-end sharing
# toml-docs-start sections # toml-docs-start sections
[sections] # [sections]
[sections.blog] # [sections.posts]
title = "Blog" # title = "Posts"
sort = "date" # sort = "date"
reverse = true # reverse = true
nested = true # nested = true
cols = 3 # cols = 3
color = "" # color = ""
padding = "0" # padding = "0"
header = "full" # header = "full"
footer = "none" # footer = "none"
orientation = "stacked" # orientation = "stacked"
style = "border-0 card-zoom" # style = "border-0 card-zoom"
homepage = 3 # homepage = 3
separator = true # separator = true
[sections.projects]
title = "Projects"
layout = "card"
sort = "title"
reverse = false
nested = true
cols = 1
background = "body-tertiary"
color = "body"
padding = "3"
header = "none"
footer = "tags"
orientation = "horizontal"
style = "border-1 card-emphasize"
homepage = 3
separator = false
# toml-docs-end sections # toml-docs-end sections
[favicon] [favicon]
@@ -196,11 +180,4 @@
#theme = "" #theme = ""
[links] [links]
bs_badge_heading = "https://getbootstrap.com/docs/5.2/components/badge/#headings" hinode = "https://gethinode.com"
hinode_docs = "https://gethinode.com/docs"
hugo_imaging = "https://gohugo.io/content-management/image-processing/#imaging-configuration"
mozilla_image = "https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images"
observatory = "https://observatory.mozilla.org/analyze/demo.gethinode.com"
pagespeed = "https://pagespeed.web.dev/report?url=https%3A%2F%2Fdemo.gethinode.com%2F"
utterances = "https://utteranc.es"

13
content/_index.md Normal file
View File

@@ -0,0 +1,13 @@
---
title: Welcome to Hinode!
thumbnail:
url: /img/sunrise.jpg
author: Harris Vo
authorURL: https://unsplash.com/@hoanvokim
origin: https://unsplash.com/photos/ZX6BPboJrYk
originName: Unsplash
---
A clean documentation and blog theme for your Hugo site based on Bootstrap 5.
{{< button href="https://gethinode.com/docs" icon="fas book-open" order="first" >}}Get Started{{< /button>}}

View File

@@ -1,6 +0,0 @@
---
author: Mark Dumay
title: Welcome to Hinode!
---
A clean documentation and blog theme for your Hugo site based on Bootstrap 5.

View File

@@ -1,6 +0,0 @@
---
author: Mark Dumay
title: Welkom bij Hinode!
---
Een documentatie en blog thema voor Hugo gebaseerd op Bootstrap 5.

View File

@@ -1,313 +0,0 @@
---
author: Mark Dumay
title: Bootstrap elementen
slug: bootstrap-elementen
date: 2023-08-05
description: Gebruik shortcodes om eenvoudig Bootstrap elementen toe te voegen.
tags: ["bootstrap", "shortcode"]
thumbnail: img/boots.jpg
photoCredits: <a href="https://unsplash.com/@nate_dumlao">Nathan Dumlao</a>
photoSource: <a href="https://unsplash.com/photos/QLPWQvHvmII">Unsplash</a>
---
Hinode beschikt over meerdere shortcodes om eenvoudig Bootstrap elementen toe te voegen aan je website. De [officiële documentatie]({{< param "links.hinode_docs" >}}) bevat meer details.
## Accordion
De volgende shortcode toont een accordion met drie elementen, waarvan de eerste is uitgeklapt.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* accordion */>}}
{{</* accordion-item header="Accordion Item #1" show="true" */>}}
Dit is de inhoud van het eerste element met ondersteuning voor HTML. De waarde <code>show</code>
voor het argument <code>class</code> geeft aan dat het element uitgeklapt moet worden.
{{</* /accordion-item */>}}
{{</* accordion-item header="Accordion Item #2" */>}}
Dit is de inhoud van het tweede element. Het ondersteunt ook HTML.
{{</* /accordion-item */>}}
{{</* accordion-item header="Accordion Item #3" */>}}
Dit is de inhoud van het derde element.
{{</* /accordion-item */>}}
{{</* /accordion */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Alert
De volgende shortcode toont een waarschuwing.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* alert color="danger" dismissible="true" */>}}
Een eenvoudige waarschuwing
{{</* /alert */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Badge
Gebruik HTML code om een label toe te voegen aan een titel. De Bootstrap [documentatie]({{< param "links.bs_badge_heading" >}}) beschrijft meer opties.
{{< example >}}
<h1>Voorbeeldtekst met grootte één <span class="badge bg-secondary">Nieuw</span></h1>
<h2>Voorbeeldtekst met grootte twee <span class="badge bg-secondary">Nieuw</span></h2>
<h3>Voorbeeldtekst met grootte drie <span class="badge bg-secondary">Nieuw</span></h3>
<h4>Voorbeeldtekst met grootte vier <span class="badge bg-secondary">Nieuw</span></h4>
<h5>Voorbeeldtekst met grootte vijf <span class="badge bg-secondary">Nieuw</span></h5>
<h6>Voorbeeldtekst met grootte zes <span class="badge bg-secondary">Nieuw</span></h6>
{{< /example >}}
## Breadcrumb
De volgende shortcode toont het navigatiepad voor de blog pagina.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* breadcrumb path="blog" */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Button
De volgende shortcode toont een knop met een label en een aanwijzing.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* button color="secondary" tooltip="Toon je ongelezen berichten" href="#!" badge="99+" */>}}
Inbox
{{</* /button */>}}
{{< /example>}}
<!-- markdownlint-enable MD037 -->
## Button group
De volgende shortcode toont een groep van drie knoppen.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* button-group aria-label="Basic example" */>}}
{{</* button color="primary" href="#!" */>}}Links{{</* /button */>}}
{{</* button color="primary" href="#!" */>}}Midden{{</* /button */>}}
{{</* button color="primary" href="#!" */>}}Rechts{{</* /button */>}}
{{</* /button-group */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Card
De volgende shortcode toont een kaart dat linkt naar de [over mij]({{< ref "about" >}}) pagina. De kaart bevat een titel.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* card path="about" padding="3" class="w-50" color="body-tertiary" header="publication" footer="none" */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Carousel
De volgende shortcode toont een carousel met drie pagina's, in een verhouding van 16x9 voor een breedte van 67% op grotere schermen.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* carousel ratio="16x9" class="col-sm-12 col-lg-8 mx-auto" */>}}
{{</* img src="img/coffee.jpg" caption="pagina 1" */>}}
{{</* img src="img/phone.jpg" caption="pagina 2" */>}}
{{</* img src="img/dunes.jpg" caption="pagina 3" */>}}
{{</* /carousel */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Collapse
De volgende shortcode toont een knop die een informatiepaneel toont of verbergt.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* button collapse="collapse-1" */>}}
Trigger panel
{{</* /button */>}}
{{</* collapse id="collapse-1" class="p-3 border rounded" */>}}
Dit is een voorbeeldtekst. Het informatiepaneel is <i>standaard verborgen </i> maar wordt getoond als
de gebruiker op de bijbehorende knop drukt.
{{</* /collapse */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Command prompt
De volgende shortcode toont een prompt voor bash.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* command */>}}
export MY_VAR=123
{{</* /command */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
Voeg `user` en `host` om de gebruikerscontext op te geven. Als aanvulling, `(out)` definieert een outputregel en `\` is een markering die aangeeft dat de regel doorgaat op de volgende regel.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* command user="user" host="localhost" */>}}
export MY_VAR=123
echo "hello"
(out)hello
echo one \
two \
three
(out)one two three
echo "goodbye"
(out)goodbye
{{</* /command */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Docs
Gebruik de volgende shortcode om de inhoud van een `toml` of `scss` bestand te tonen.
{{< docs name="theme-colors" file="config/_default/params.toml" >}}
## Example
Gebruik de `example` shortcode om zowel de input als een voorbeeld van code te tonen.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* command */>}}
export MY_VAR=123
{{</* /command */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## File
Gebruik de `file` shortcode om de volledige inhoud van een bestand te tonen, inclusief taalafhankelijke opmaak.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* file path="./config/_default/languages.toml" id="file-collapse-1" */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Icon
De volgende shortcodes tonen drie verschillende iconen:
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* fa square-check */>}}
{{</* fab linkedin */>}}
{{</* fas circle-check */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Image
De volgende shortcode toont een plaatje met afgeronde hoeken en een 21x9 verhouding.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* image src="img/flowers.jpg" ratio="21x9" caption="Onderschrift" class="rounded" */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Nav
De volgende shortcode toont een groep met verticale tabbladen.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* nav type="pills" vertical="true" */>}}
{{</* nav-item header="Nav Item #1" show="true" */>}}
Dit is de inhoud van het eerste element met ondersteuning voor HTML. De waarde <code>show</code>
voor het argument <code>class</code> geeft aan dat het element uitgeklapt moet worden.
{{</* /nav-item */>}}
{{</* nav-item header="Nav Item #2" */>}}
Dit is de inhoud van het tweede element. Het ondersteunt ook HTML.
{{</* /nav-item */>}}
{{</* nav-item header="Nav Item #3" */>}}
Dit is de inhoud van het derde element.
{{</* /nav-item */>}}
{{</* /nav */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Navbar
De volgende shortcode toont een navigatiemenu.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* navbar path="about" color="primary" size="md" search="false" menus="sample" title="Brand" mode="false" */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Release
De volgende shortcode toont een knop voor een nieuwe release.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* release version="v0.14.1" */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Spinner
De volgende shortcode toont een ronddraaiende cirkel.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* spinner color="info" class="text-center" */>}}
Loading...
{{</* /spinner */>}}
{{< /example>}}
<!-- markdownlint-enable MD037 -->
## Timeline
De volgende shortcode toont een tijdslijn met het bestand `data/timeline-nl.yml` als input.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* timeline data="timeline-nl" */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Toast
De volgende shortcode toont een knop die een bericht laat verschijnen op het scherm.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* button toast="toast-example-1" */>}}
Toon bericht 1
{{</* /button */>}}
{{</* button toast="toast-example-2" */>}}
Toon bericht 2
{{</* /button */>}}
{{</* toast id="toast-example-1" header="Eerste titel" */>}}
Dit is het eerste bericht.
{{</* /toast */>}}
{{</* toast id="toast-example-2" header="Tweede titel" */>}}
Dit is het tweede bericht.
{{</* /toast */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->
## Tooltip
De volgende shortcode toont een uitleg voor een gekleurde link.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* tooltip color="primary" title="Tooltip" href="#!" */>}}Tooltip{{</* /tooltip */>}} demonstratie
{{< /example >}}
<!-- markdownlint-enable MD037 -->

View File

@@ -1,37 +0,0 @@
---
author: Mark Dumay
title: Componenten
slug: componenten
date: 2023-07-21
description: Gebruik shortcodes om voorgedefiniëerde componenten toe te voegen die gebruikmaken van externe libraries.
tags: ["bootstrap", "shortcode"]
thumbnail: img/puzzle.jpg
photoCredits: <a href="https://unsplash.com/@ryoji__iwata">Ryoji Iwata</a>
photoSource: <a href="https://unsplash.com/photos/5siQcvSxCP8">Unsplash</a>
modules: ["katex", "leaflet"]
---
Hinode biedt meerdere shortcodes aan bovenop de gebruikelijke [Bootstrap elementen]({{< relref "bootstrap-elements" >}}). Zie de [officiële documentatie]({{< param "links.hinode_docs" >}}) voor meer details.
## Formule (KaTeX)
De volgende markdown code genereert twee wiskundige formules met behulp van KaTeX.
{{< example lang="markdown" >}}
Dit is een inline $-b \pm \sqrt{b^2 - 4ac} \over 2a$ formule
Dit is geen inline formule:
$$x = a_0 + \frac{1}{a_1 + \frac{1}{a_2 + \frac{1}{a_3 + a_4}}}$$
$$\forall x \in X, \quad \exists y \leq \epsilon$$
{{< /example >}}
## Map
De volgende shortcode toont een interactieve kaart van Amsterdam.
<!-- markdownlint-disable MD037 -->
{{< example lang="hugo" >}}
{{</* map lat=52.377 long=4.90 zoom=13 popup="Amsterdam CS" popup-lat=52.378062 popup-long=4.900562 */>}}
{{< /example >}}
<!-- markdownlint-enable MD037 -->

View File

@@ -0,0 +1,78 @@
title = "Hinode"
copyright = "Copyright © 2023 Mark Dumay."
paginate = 9
enableGitInfo = true
# additional settings
googleAnalytics = "G-T85PPZ36GN"
baseURL = "https://demo.gethinode.com/"
canonifyURLs = false
enableEmoji = true
enableRobotsTXT = true
enableInlineShortcodes = true
# prevent build failures when using Hugo's Instagram shortcode due to deprecated Instagram API.
# See https://github.com/gohugoio/hugo/issues/7228#issuecomment-714490456
ignoreErrors = ["error-remote-getjson"]
timeout = "180s"
languageCode = "en-us"
defaultContentLanguage = "en"
defaultContentLanguageInSubdir = true
[outputFormats.REDIR]
mediaType = "text/netlify"
baseName = "_redirects"
isPlainText = true
notAlternative = true
[mediaTypes."text/netlify"]
delimiter = ""
[outputs]
home = ["HTML", "RSS", "REDIR"]
[build]
writeStats = true
[taxonomies]
tag = 'tags'
[privacy]
[privacy.vimeo]
disabled = false
simple = true
[privacy.twitter]
disabled = false
enableDNT = true
simple = true
[privacy.instagram]
disabled = false
simple = true
[privacy.youtube]
disabled = false
privacyEnhanced = true
[services]
[services.instagram]
disableInlineCSS = true
[services.twitter]
disableInlineCSS = true
[outputFormats]
[outputFormats.XML]
isPlainText = false
mediaType = "application/xml"
isHtml = false
noUgly = true
permalinkable = false
name = "xml"
[module]
replacements = 'github.com/gethinode/hinode -> ../..'
[[module.imports]]
path = "github.com/gethinode/hinode"

View File

@@ -0,0 +1,36 @@
# toml-docs-start lang-main
[en]
languageName = "English"
contentDir = "content/en"
weight = 1
# toml-docs-end lang-main
# toml-docs-start lang-param
[en.params.head]
tagline = "A Hugo Theme"
[en.params.social]
title = "Follow me"
caption = "I work on everything coding and tweet developer memes"
[en.params.footer]
# license = "Licensed under Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
# toml-docs-end lang-param
[en.params.sections.blog]
reference = "More Posts"
[en.params.sections.projects]
reference = "More Projects"
[nl]
languageName = "Nederlands"
contentDir = "content/nl"
weight = 2
[nl.params.head]
tagline = "Een Hugo Thema"
[nl.params.social]
title = "Volg mij"
caption = "Ik doe aan programmeren en tweet memes"
[nl.params.footer]
# license = "Gelicenseerd onder Creative Commons (<a href='https://creativecommons.org/licenses/by-nc-sa/4.0/' class='link-secondary' target='_blank' rel='noopener noreferrer'>CC BY-NC-SA 4.0</a>)."
[nl.params.sections.blog]
reference = "Meer artikelen"
[nl.params.sections.projects]
title = "Projecten"
reference = "Meer projecten"

View File

@@ -0,0 +1,35 @@
defaultMarkdownHandler = "goldmark"
[highlight]
anchorLineNos = false
codeFences = true
guessSyntax = true
hl_Lines = ""
lineAnchors = ""
lineNoStart = 1
lineNos = false
lineNumbersInTable = false
noClasses = false
tabWidth = 2
## Update the 'create:syntax' command in package.json to modify the style
## The first two lines have been modified to remove the background color
# style = "monokailight"
[goldmark]
[goldmark.extensions]
definitionList = true
footnote = true
linkify = true
strikethrough = true
table = true
taskList = true
typographer = true
[goldmark.parser]
autoHeadingID = true
autoHeadingIDType = 'github'
[goldmark.parser.attribute]
block = true
[goldmark.renderer]
hardWraps = false
unsafe = true
xhtml = false

View File

@@ -0,0 +1,73 @@
[[main]]
name = "About"
pageRef = "/about/"
weight = 10
[[main]]
name = "Blog"
pageRef = "/blog/"
weight = 20
[[main]]
name = "Projects"
pageRef = "/projects/"
weight = 30
[[main]]
name = "Sample project"
pageRef = "/projects/sample-project/"
parent = "Projects"
weight = 1
[[main]]
name = "Another project"
pageRef = "/projects/another-project/"
parent = "Projects"
weight = 2
[[main]]
name = "Tags"
pageRef = "/tags/"
weight = 40
[[social]]
name = "LinkedIn"
pre = "fab linkedin"
url = "https://linkedin.com/"
weight = 10
[[social]]
name = "GitHub"
pre = "fab fa-github"
url = "https://github.com/"
weight = 20
[[social]]
name = "Medium"
pre = "fab medium"
url = "https://medium.com/"
weight = 30
# toml-docs-start sample-navigation
[[sample]]
name = "Blog"
pageRef = "/blog/"
weight = 10
[[sample]]
name = "Projects"
pageRef = "/projects/"
weight = 20
[[sample]]
name = "Sample project"
pageRef = "/projects/sample-project/"
parent = "Projects"
weight = 1
[[sample]]
name = "Another project"
pageRef = "/projects/another-project/"
parent = "Projects"
weight = 2
# toml-docs-end sample-navigation

View File

@@ -0,0 +1,183 @@
[main]
separator = "-"
description = "Hinode is a clean documentation and blog theme for your Hugo site based on Bootstrap 5."
enableDarkMode = true
modes = ["light", "dark"]
canonifyAssetsURLs = false
[main.externalLinks]
cue = true
tab = true
[modules]
core = ["bootstrap", "flexsearch", "fontawesome"]
optional = ["leaflet", "katex"]
excludeSCSS = ["bootstrap"]
disableTemplate = ["katex"]
[modules.fontawesome]
inline = true
debug = true
skipMissing = false
[debugging]
showJS = false
showSCSS = false
[docs]
basePath = "/" # TODO: replace
github = "https://github.com/gethinode/hinode"
release = "https://github.com/gethinode/hinode/releases/tag/"
checkVersion = false
[home]
sections = ["blog", "projects"]
fullCover = false
centerHeadline = false
style = ""
[navigation]
anchor = true
logo = "/img/logo_icon.svg"
color = "body"
fixed = true
offset = "3.8em"
search = true
breadcrumb = true
toc = true
sidebar = true
[messages]
placement = "bottom-right"
[sharing]
enabled = true
sort = "weight"
reverse = false
webshare = true
[[sharing.providers]]
name = "LinkedIn"
url = "https://www.linkedin.com/sharing/share-offsite/?url={url}"
icon = "fab linkedin"
weight = 10
[[sharing.providers]]
name = "Twitter"
url = "https://twitter.com/home?status={url}"
icon = "fab x-twitter"
weight = 20
[[sharing.providers]]
name = "Facebook"
url = "https://www.facebook.com/sharer.php?u={url}"
icon = "fab facebook"
weight = 30
[[sharing.providers]]
name = "WhatsApp"
url = "whatsapp://send?text={title}%20{url}"
icon = "fab whatsapp"
weight = 40
[[sharing.providers]]
name = "email"
url = "{url}"
icon = "fas link"
weight = 50
clipboard = true
[sections]
[sections.blog]
title = "Blog"
sort = "date"
reverse = true
cols = 3
color = ""
padding = "0"
header = "full"
footer = "none"
orientation = "stacked"
style = "border-0 card-zoom"
homepage = 3
separator = true
[sections.projects]
title = "Projects"
layout = "card"
sort = "title"
reverse = false
nested = true
cols = 1
background = "body-tertiary"
color = "body"
padding = "3"
header = "none"
footer = "tags"
orientation = "horizontal"
style = "border-1 card-emphasize"
homepage = 3
separator = false
[favicon]
logo = "img/favicon.png"
sizes = [16, 32, 48]
# toml-docs-start theme-colors
[style]
primary = "#d43900"
secondary = "#6c757d"
success = "#198754"
info = "#0dcaf0"
warning = "#ffc107"
danger = "#dc3545"
light = "#f8f9fa"
dark = "#212529"
themeOpacity = "10"
themeFont = "Inter"
# themeFontPath = "https://fonts.googleapis.com/css2?family=Inter:wght@200;300;600&display=swap" # external path
themeFontPath = "/fonts" # local path
purge = true
# toml-docs-end theme-colors
[schema]
type = "Organization"
name = "Hinode"
locale = "en-US"
# twitter = "https://twitter.com/gethinode"
# linkedIn = ""
github = "https://github.com/gethinode/hinode"
section = "blog"
[author]
name = "Mark Dumay"
# twitter = "https://twitter.com/markdumay"
linkedin = "https://www.linkedin.com/in/markdumay/"
github = "https://github.com/markdumay"
[logo]
url = "img/logo512x512.png"
width = 512
height = 512
[image]
url = "img/logo1280x640.png"
width = 1280
height = 640
[opengraph]
images = ["logo.png"]
locale = "en_US"
[comments]
enabled = false
repo = "" # Replace with your repository.
#issueTerm = "pathname" # pathname, url, title, og:title
#label = "comment"
# By default, light and dark mode correspond to github-light and github-dark, respectively.
# Optional values: github-light, github-dark, preferred-color-scheme, github-dark-orange, icy-dark, dark-blue, photon-dark.
#theme = ""
[links]
bs_badge_heading = "https://getbootstrap.com/docs/5.3/components/badge/#headings"
hinode_docs = "https://gethinode.com"
hugo_imaging = "https://gohugo.io/content-management/image-processing/#imaging-configuration"
mozilla_image = "https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images"
observatory = "https://observatory.mozilla.org/analyze/demo.gethinode.com"
pagespeed = "https://pagespeed.web.dev/report?url=https%3A%2F%2Fdemo.gethinode.com%2F"
utterances = "https://utteranc.es"
hinode = "https://gethinode.com"

View File

@@ -0,0 +1,43 @@
# toml-docs-start server-config
[[headers]]
for = '/**'
[headers.values]
Strict-Transport-Security = "max-age=31536000; includeSubDomains; preload"
X-Content-Type-Options = "nosniff"
X-XSS-Protection = "1; mode=block"
Content-Security-Policy = """\
default-src 'self'; \
script-src 'self' \
https://utteranc.es/client.js https://*.google-analytics.com https://*.googletagmanager.com; \
style-src 'self' https://utteranc.es https://fonts.googleapis.com https://www.youtube.com; \
object-src 'none'; \
base-uri 'self'; \
connect-src 'self'
https://*.google-analytics.com https://*.analytics.google.com https://*.googletagmanager.com; \
font-src 'self' https://fonts.gstatic.com; \
frame-src 'self' https://utteranc.es https://www.youtube-nocookie.com https://www.youtube.com; \
img-src 'self' data: https://i.vimeocdn.com https://i.ytimg.com https://*.google-analytics.com https://*.googletagmanager.com https://tile.openstreetmap.org; \
manifest-src 'self'; \
media-src 'self' \
"""
X-Frame-Options = "SAMEORIGIN"
Referrer-Policy = "strict-origin"
Permissions-Policy = """\
geolocation=(), \
midi=(), \
sync-xhr=(), \
microphone=(), \
camera=(), \
magnetometer=(), \
gyroscope=(), \
fullscreen=(), \
payment=() \
"""
cache-control = """\
max-age=0, \
no-cache, \
no-store, \
must-revalidate \
"""
Access-Control-Allow-Origin = "*"
# toml-docs-end server-config

View File

@@ -0,0 +1,14 @@
---
author: Mark Dumay
title: Welcome to Hinode!
thumbnail:
url: /img/sunrise.jpg
author: Harris Vo
authorURL: https://unsplash.com/@hoanvokim
origin: https://unsplash.com/photos/ZX6BPboJrYk
originName: Unsplash
---
A clean documentation and blog theme for your Hugo site based on Bootstrap 5.
{{< button href="about" >}}About{{< /button>}}

View File

@@ -4,9 +4,12 @@ title: Bootstrap elements
date: 2023-08-05 date: 2023-08-05
description: Use shortcodes to add common Bootstrap elements with ease. description: Use shortcodes to add common Bootstrap elements with ease.
tags: ["bootstrap", "shortcode"] tags: ["bootstrap", "shortcode"]
thumbnail: img/boots.jpg thumbnail:
photoCredits: <a href="https://unsplash.com/@nate_dumlao">Nathan Dumlao</a> url: img/boots.jpg
photoSource: <a href="https://unsplash.com/photos/QLPWQvHvmII">Unsplash</a> author: Nathan Dumlao
authorURL: https://unsplash.com/@nate_dumlao
origin: Unsplash
originURL: https://unsplash.com/photos/QLPWQvHvmII
--- ---
Hinode provides several shortcodes that wrap common Bootstrap components. Refer to the [official documentation]({{< param "links.hinode_docs" >}}) for more details. Hinode provides several shortcodes that wrap common Bootstrap components. Refer to the [official documentation]({{< param "links.hinode_docs" >}}) for more details.

View File

@@ -4,9 +4,12 @@ title: Components
date: 2023-07-21 date: 2023-07-21
description: Use shortcodes to add predefined components powered by external libraries. description: Use shortcodes to add predefined components powered by external libraries.
tags: ["bootstrap", "shortcode"] tags: ["bootstrap", "shortcode"]
thumbnail: img/puzzle.jpg thumbnail:
photoCredits: <a href="https://unsplash.com/@ryoji__iwata">Ryoji Iwata</a> url: img/puzzle.jpg
photoSource: <a href="https://unsplash.com/photos/5siQcvSxCP8">Unsplash</a> author: Ryoji Iwata
authorURL: https://unsplash.com/@ryoji__iwata
origin: Unsplash
originURL: https://unsplash.com/photos/5siQcvSxCP8
modules: ["katex", "leaflet"] modules: ["katex", "leaflet"]
--- ---

View File

@@ -4,9 +4,12 @@ title: First post
date: 2022-10-01 date: 2022-10-01
description: This is my first blog post. description: This is my first blog post.
tags: ["blog"] tags: ["blog"]
thumbnail: img/notepad.jpg thumbnail:
photoCredits: <a href="https://unsplash.com/@frederickjmedina">Frederick Medina</a> url: img/notepad.jpg
photoSource: <a href="https://unsplash.com/photos/PdfRE-xB--s">Unsplash</a> author: Frederick Medina
authorURL: https://unsplash.com/@frederickjmedina
origin: Unsplash
originURL: https://unsplash.com/photos/PdfRE-xB--s
--- ---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate, ante in luctus congue, leo risus semper justo, vel consequat sapien lectus quis ipsum. In imperdiet urna justo. Nulla vel pellentesque ipsum. Cras congue feugiat dolor ac aliquam. Pellentesque eget dui venenatis, ultrices urna ac, vehicula nibh. Curabitur est lectus, dapibus eu vehicula non, malesuada et dui. Nam enim nulla, egestas et nunc non, elementum aliquet justo. Mauris euismod mauris sapien, eget vestibulum odio dictum sit amet. Morbi nisl elit, placerat at auctor in, finibus ac neque. Curabitur placerat feugiat risus non vestibulum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quis cursus est, nec posuere libero. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate, ante in luctus congue, leo risus semper justo, vel consequat sapien lectus quis ipsum. In imperdiet urna justo. Nulla vel pellentesque ipsum. Cras congue feugiat dolor ac aliquam. Pellentesque eget dui venenatis, ultrices urna ac, vehicula nibh. Curabitur est lectus, dapibus eu vehicula non, malesuada et dui. Nam enim nulla, egestas et nunc non, elementum aliquet justo. Mauris euismod mauris sapien, eget vestibulum odio dictum sit amet. Morbi nisl elit, placerat at auctor in, finibus ac neque. Curabitur placerat feugiat risus non vestibulum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quis cursus est, nec posuere libero.

View File

@@ -4,9 +4,12 @@ title: Fourth post
date: 2023-01-01 date: 2023-01-01
description: This is my fourth blog post. description: This is my fourth blog post.
tags: ["blog"] tags: ["blog"]
thumbnail: img/flowers.jpg # https://picsum.photos/id/106/2592/1728 thumbnail:
photoCredits: <a href="https://unsplash.com/@flutterhappy">Arvee Marie</a> url: img/flowers.jpg
photoSource: <a href="https://unsplash.com/photos/YnfGtpt2gf4">Unsplash</a> author: Arvee Marie
authorURL: https://unsplash.com/@flutterhappy
origin: Unsplash
originURL: https://unsplash.com/photos/YnfGtpt2gf4
--- ---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam finibus libero in felis accumsan, vitae imperdiet metus vehicula. Quisque nec dignissim purus. In id dui porta sapien posuere viverra nec vel nisi. Sed varius tincidunt lectus, quis sagittis felis interdum id. Proin purus odio, ultrices auctor libero convallis, volutpat gravida turpis. Ut commodo metus orci, quis sagittis lectus rhoncus non. Nulla et lectus tortor. Suspendisse quam felis, molestie non odio quis, consequat venenatis orci. Etiam sed turpis sit amet elit scelerisque imperdiet. Sed suscipit felis non nibh suscipit egestas. Nulla sodales libero non rhoncus consequat. Nunc in elit at est cursus congue ut ac velit. Cras luctus libero augue, id semper sapien volutpat ultrices. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam finibus libero in felis accumsan, vitae imperdiet metus vehicula. Quisque nec dignissim purus. In id dui porta sapien posuere viverra nec vel nisi. Sed varius tincidunt lectus, quis sagittis felis interdum id. Proin purus odio, ultrices auctor libero convallis, volutpat gravida turpis. Ut commodo metus orci, quis sagittis lectus rhoncus non. Nulla et lectus tortor. Suspendisse quam felis, molestie non odio quis, consequat venenatis orci. Etiam sed turpis sit amet elit scelerisque imperdiet. Sed suscipit felis non nibh suscipit egestas. Nulla sodales libero non rhoncus consequat. Nunc in elit at est cursus congue ut ac velit. Cras luctus libero augue, id semper sapien volutpat ultrices.

View File

@@ -4,9 +4,12 @@ title: Second post
date: 2022-11-01 date: 2022-11-01
description: This is my second blog post. description: This is my second blog post.
tags: ["blog"] tags: ["blog"]
thumbnail: img/phone.jpg # https://picsum.photos/id/160/3200/2119 thumbnail:
photoCredits: <a href="https://unsplash.com/@thomweerd">Thom</a> url: img/phone.jpg
photoSource: <a href="https://unsplash.com/photos/Zdcq3iKly6g">Unsplash</a> author: Thom
authorURL: https://unsplash.com/@thomweerd
origin: Unsplash
originURL: https://unsplash.com/photos/Zdcq3iKly6g
--- ---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non sollicitudin sapien. Ut porttitor lectus eu tempor ultricies. Sed semper tincidunt nibh pellentesque condimentum. Vivamus dictum sem eu rhoncus semper. Vestibulum convallis congue tincidunt. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Mauris magna urna, egestas sit amet ligula quis, viverra semper arcu. Praesent laoreet nunc vitae nulla posuere facilisis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non sollicitudin sapien. Ut porttitor lectus eu tempor ultricies. Sed semper tincidunt nibh pellentesque condimentum. Vivamus dictum sem eu rhoncus semper. Vestibulum convallis congue tincidunt. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Mauris magna urna, egestas sit amet ligula quis, viverra semper arcu. Praesent laoreet nunc vitae nulla posuere facilisis.

View File

@@ -4,9 +4,12 @@ title: Third post
date: 2022-12-01 date: 2022-12-01
description: This is my third blog post. description: This is my third blog post.
tags: ["blog"] tags: ["blog"]
thumbnail: https://picsum.photos/id/184/4288/2848.jpg thumbnail:
photoCredits: <a href="https://unsplash.com/@timdegroot">Tim de Groot</a> url: https://picsum.photos/id/184/4288/2848.jpg
photoSource: <a href="https://unsplash.com/photos/yNGQ830uFB4">Unsplash</a> author: Tim de Groot
authorURL: https://unsplash.com/@timdegroot
origin: Unsplash
originURL: https://unsplash.com/photos/yNGQ830uFB4
--- ---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent id scelerisque ligula. Vestibulum eu lorem tortor. Suspendisse tristique ultrices mauris, non maximus lorem faucibus in. Suspendisse sagittis eleifend dapibus. Curabitur dignissim luctus sapien eu consequat. Proin congue dui vel ipsum bibendum varius. Pellentesque cursus nisi metus, egestas eleifend ipsum sollicitudin vitae. Sed vitae erat elementum, semper turpis sed, molestie nulla. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent id scelerisque ligula. Vestibulum eu lorem tortor. Suspendisse tristique ultrices mauris, non maximus lorem faucibus in. Suspendisse sagittis eleifend dapibus. Curabitur dignissim luctus sapien eu consequat. Proin congue dui vel ipsum bibendum varius. Pellentesque cursus nisi metus, egestas eleifend ipsum sollicitudin vitae. Sed vitae erat elementum, semper turpis sed, molestie nulla.

View File

@@ -3,4 +3,4 @@ draft: false
outputs: outputs:
- xml - xml
url: browserconfig.xml url: browserconfig.xml
--- ---

View File

@@ -0,0 +1,14 @@
---
author: Mark Dumay
title: Welkom bij Hinode!
thumbnail:
url: /img/sunrise.jpg
author: Harris Vo
authorURL: https://unsplash.com/@hoanvokim
origin: https://unsplash.com/photos/ZX6BPboJrYk
originName: Unsplash
---
Een documentatie en blog thema voor Hugo gebaseerd op Bootstrap 5.
{{< button href="over-mij" >}}Over mij{{< /button>}}

View File

@@ -5,9 +5,12 @@ slug: eerste-artikel
date: 2022-10-01 date: 2022-10-01
description: Dit is mijn eerste artikel. description: Dit is mijn eerste artikel.
tags: ["blog"] tags: ["blog"]
thumbnail: img/notepad.jpg thumbnail:
photoCredits: <a href="https://unsplash.com/@frederickjmedina">Frederick Medina</a> url: img/notepad.jpg
photoSource: <a href="https://unsplash.com/photos/PdfRE-xB--s">Unsplash</a> author: Frederick Medina
authorURL: https://unsplash.com/@frederickjmedina
origin: Unsplash
originURL: https://unsplash.com/photos/PdfRE-xB--s
--- ---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate, ante in luctus congue, leo risus semper justo, vel consequat sapien lectus quis ipsum. In imperdiet urna justo. Nulla vel pellentesque ipsum. Cras congue feugiat dolor ac aliquam. Pellentesque eget dui venenatis, ultrices urna ac, vehicula nibh. Curabitur est lectus, dapibus eu vehicula non, malesuada et dui. Nam enim nulla, egestas et nunc non, elementum aliquet justo. Mauris euismod mauris sapien, eget vestibulum odio dictum sit amet. Morbi nisl elit, placerat at auctor in, finibus ac neque. Curabitur placerat feugiat risus non vestibulum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quis cursus est, nec posuere libero. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate, ante in luctus congue, leo risus semper justo, vel consequat sapien lectus quis ipsum. In imperdiet urna justo. Nulla vel pellentesque ipsum. Cras congue feugiat dolor ac aliquam. Pellentesque eget dui venenatis, ultrices urna ac, vehicula nibh. Curabitur est lectus, dapibus eu vehicula non, malesuada et dui. Nam enim nulla, egestas et nunc non, elementum aliquet justo. Mauris euismod mauris sapien, eget vestibulum odio dictum sit amet. Morbi nisl elit, placerat at auctor in, finibus ac neque. Curabitur placerat feugiat risus non vestibulum. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quis cursus est, nec posuere libero.

View File

@@ -5,9 +5,12 @@ slug: vierde-artikel
date: 2023-01-01 date: 2023-01-01
description: Dit is mijn vierde artikel. description: Dit is mijn vierde artikel.
tags: ["blog"] tags: ["blog"]
thumbnail: img/flowers.jpg # https://picsum.photos/id/106/2592/1728 thumbnail:
photoCredits: <a href="https://unsplash.com/@flutterhappy">Arvee Marie</a> url: img/flowers.jpg
photoSource: <a href="https://unsplash.com/photos/YnfGtpt2gf4">Unsplash</a> author: Arvee Marie
authorURL: https://unsplash.com/@flutterhappy
origin: Unsplash
originURL: https://unsplash.com/photos/YnfGtpt2gf4
--- ---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam finibus libero in felis accumsan, vitae imperdiet metus vehicula. Quisque nec dignissim purus. In id dui porta sapien posuere viverra nec vel nisi. Sed varius tincidunt lectus, quis sagittis felis interdum id. Proin purus odio, ultrices auctor libero convallis, volutpat gravida turpis. Ut commodo metus orci, quis sagittis lectus rhoncus non. Nulla et lectus tortor. Suspendisse quam felis, molestie non odio quis, consequat venenatis orci. Etiam sed turpis sit amet elit scelerisque imperdiet. Sed suscipit felis non nibh suscipit egestas. Nulla sodales libero non rhoncus consequat. Nunc in elit at est cursus congue ut ac velit. Cras luctus libero augue, id semper sapien volutpat ultrices. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam finibus libero in felis accumsan, vitae imperdiet metus vehicula. Quisque nec dignissim purus. In id dui porta sapien posuere viverra nec vel nisi. Sed varius tincidunt lectus, quis sagittis felis interdum id. Proin purus odio, ultrices auctor libero convallis, volutpat gravida turpis. Ut commodo metus orci, quis sagittis lectus rhoncus non. Nulla et lectus tortor. Suspendisse quam felis, molestie non odio quis, consequat venenatis orci. Etiam sed turpis sit amet elit scelerisque imperdiet. Sed suscipit felis non nibh suscipit egestas. Nulla sodales libero non rhoncus consequat. Nunc in elit at est cursus congue ut ac velit. Cras luctus libero augue, id semper sapien volutpat ultrices.

View File

@@ -5,9 +5,12 @@ slug: tweede-artikel
date: 2022-11-01 date: 2022-11-01
description: Dit is mijn tweede artikel. description: Dit is mijn tweede artikel.
tags: ["blog"] tags: ["blog"]
thumbnail: img/phone.jpg # https://picsum.photos/id/160/3200/2119 thumbnail:
photoCredits: <a href="https://unsplash.com/@thomweerd">Thom</a> url: img/phone.jpg
photoSource: <a href="https://unsplash.com/photos/Zdcq3iKly6g">Unsplash</a> author: Thom
authorURL: https://unsplash.com/@thomweerd
origin: Unsplash
originURL: https://unsplash.com/photos/Zdcq3iKly6g
--- ---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non sollicitudin sapien. Ut porttitor lectus eu tempor ultricies. Sed semper tincidunt nibh pellentesque condimentum. Vivamus dictum sem eu rhoncus semper. Vestibulum convallis congue tincidunt. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Mauris magna urna, egestas sit amet ligula quis, viverra semper arcu. Praesent laoreet nunc vitae nulla posuere facilisis. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed non sollicitudin sapien. Ut porttitor lectus eu tempor ultricies. Sed semper tincidunt nibh pellentesque condimentum. Vivamus dictum sem eu rhoncus semper. Vestibulum convallis congue tincidunt. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Mauris magna urna, egestas sit amet ligula quis, viverra semper arcu. Praesent laoreet nunc vitae nulla posuere facilisis.

View File

@@ -5,9 +5,12 @@ slug: derde-artikel
date: 2022-12-01 date: 2022-12-01
description: Dit is mijn derde artikel. description: Dit is mijn derde artikel.
tags: ["blog"] tags: ["blog"]
thumbnail: https://picsum.photos/id/184/4288/2848.jpg thumbnail:
photoCredits: <a href="https://unsplash.com/@timdegroot">Tim de Groot</a> url: https://picsum.photos/id/184/4288/2848.jpg
photoSource: <a href="https://unsplash.com/photos/yNGQ830uFB4">Unsplash</a> author: Tim de Groot
authorURL: https://unsplash.com/@timdegroot
origin: Unsplash
originURL: https://unsplash.com/photos/yNGQ830uFB4
--- ---
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent id scelerisque ligula. Vestibulum eu lorem tortor. Suspendisse tristique ultrices mauris, non maximus lorem faucibus in. Suspendisse sagittis eleifend dapibus. Curabitur dignissim luctus sapien eu consequat. Proin congue dui vel ipsum bibendum varius. Pellentesque cursus nisi metus, egestas eleifend ipsum sollicitudin vitae. Sed vitae erat elementum, semper turpis sed, molestie nulla. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent id scelerisque ligula. Vestibulum eu lorem tortor. Suspendisse tristique ultrices mauris, non maximus lorem faucibus in. Suspendisse sagittis eleifend dapibus. Curabitur dignissim luctus sapien eu consequat. Proin congue dui vel ipsum bibendum varius. Pellentesque cursus nisi metus, egestas eleifend ipsum sollicitudin vitae. Sed vitae erat elementum, semper turpis sed, molestie nulla.

View File

@@ -3,4 +3,4 @@ draft: false
outputs: outputs:
- xml - xml
url: browserconfig.xml url: browserconfig.xml
--- ---

11
exampleSite/go.mod Normal file
View File

@@ -0,0 +1,11 @@
module github.com/gethinode/hinode-test
go 1.19
require (
github.com/gethinode/mod-bootstrap v1.1.1 // indirect
github.com/gethinode/mod-flexsearch v1.2.0 // indirect
github.com/gethinode/mod-fontawesome v1.2.4 // indirect
github.com/gethinode/mod-katex v1.0.2 // indirect
github.com/gethinode/mod-leaflet v0.3.4 // indirect
)

10
exampleSite/go.sum Normal file
View File

@@ -0,0 +1,10 @@
github.com/gethinode/mod-bootstrap v1.1.1 h1:Tx4M5hGVOFrEaxnUONDAm6N9xuRi5UphKlT7F26HujU=
github.com/gethinode/mod-bootstrap v1.1.1/go.mod h1:DcpPc2cNaXUPGEvhD7npuEEPA7573NvakTlrwFbyjr8=
github.com/gethinode/mod-flexsearch v1.2.0 h1:SSMpWzK9SMbi9QRYfil9PJZLLWWLHWzlTc69UxtSWAA=
github.com/gethinode/mod-flexsearch v1.2.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4=
github.com/gethinode/mod-fontawesome v1.2.4 h1:SqE3CQ+boaBIhrVh3MPu4nz0uoHPfEH5t60nNY1CfsI=
github.com/gethinode/mod-fontawesome v1.2.4/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-katex v1.0.2 h1:pIG4n3qLl/IVe7BEiwn+GL8r5lOCtF6FDxlcrPKdAXk=
github.com/gethinode/mod-katex v1.0.2/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
github.com/gethinode/mod-leaflet v0.3.4 h1:oY+YQ0JiJuhFQNrk9XgFdg0NMsTUQPXNfnILp4ia4r4=
github.com/gethinode/mod-leaflet v0.3.4/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk=

2
go.mod
View File

@@ -5,7 +5,7 @@ go 1.19
require ( require (
github.com/gethinode/mod-bootstrap v1.1.1 // indirect github.com/gethinode/mod-bootstrap v1.1.1 // indirect
github.com/gethinode/mod-flexsearch v1.2.0 // indirect github.com/gethinode/mod-flexsearch v1.2.0 // indirect
github.com/gethinode/mod-fontawesome v1.2.4 // indirect github.com/gethinode/mod-fontawesome v1.2.5 // indirect
github.com/gethinode/mod-katex v1.0.2 // indirect github.com/gethinode/mod-katex v1.0.2 // indirect
github.com/gethinode/mod-leaflet v0.3.4 // indirect github.com/gethinode/mod-leaflet v0.3.4 // indirect
) )

2
go.sum
View File

@@ -32,6 +32,8 @@ github.com/gethinode/mod-fontawesome v1.2.3 h1:RHWd+E72+m29xaC45m/3CF35C201jehw0
github.com/gethinode/mod-fontawesome v1.2.3/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= github.com/gethinode/mod-fontawesome v1.2.3/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-fontawesome v1.2.4 h1:SqE3CQ+boaBIhrVh3MPu4nz0uoHPfEH5t60nNY1CfsI= github.com/gethinode/mod-fontawesome v1.2.4 h1:SqE3CQ+boaBIhrVh3MPu4nz0uoHPfEH5t60nNY1CfsI=
github.com/gethinode/mod-fontawesome v1.2.4/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= github.com/gethinode/mod-fontawesome v1.2.4/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-fontawesome v1.2.5 h1:RqkLRj6+s+gM4nKd0IwNMMDA8cRmxfp0fxkVH4FdAGU=
github.com/gethinode/mod-fontawesome v1.2.5/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI=
github.com/gethinode/mod-katex v1.0.0 h1:me/3dIIZBkfk1mRIFt8QiAGYwYDoSG5bc2hHRtIutFc= github.com/gethinode/mod-katex v1.0.0 h1:me/3dIIZBkfk1mRIFt8QiAGYwYDoSG5bc2hHRtIutFc=
github.com/gethinode/mod-katex v1.0.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg= github.com/gethinode/mod-katex v1.0.0/go.mod h1:byAfpI3wuqNJIooTGVEGc1cjBhhCy4+CcK1H6495MYg=
github.com/gethinode/mod-katex v1.0.1 h1:809QUztxmKgMNchU+v03iMO7Ma+ISc3ZzhXYauc21rs= github.com/gethinode/mod-katex v1.0.1 h1:809QUztxmKgMNchU+v03iMO7Ma+ISc3ZzhXYauc21rs=

View File

@@ -1,52 +1,42 @@
# Content # Single pages
- id: about
translation: "Über mich"
- id: postedOnDate - id: postedOnDate
translation: "Veröffentlicht am {{ . }}" translation: "Veröffentlicht am {{ . }}"
- id: lastModified - id: lastModified
translation: "Zuletzt verändert am {{ . }}" translation: "Zuletzt verändert am {{ . }}"
- id: translationsLabel
translation: "Andere Sprachen: "
- id: translationsSeparator
translation: ", "
- id: more
translation: "Weitere {{ . }}"
- id: readMore
translation: "Weiterlesen"
- id: moreBlog
translation: "Weitere Beiträge"
- id: olderBlog
translation: "Ältere Beiträge"
- id: recentBlog
translation: "Aktuelle Beiträge"
- id: newerBlog
translation: "Neuere Beiträge"
- id: previousBlog
translation: "Vorheriger Beitrag"
- id: nextBlog
translation: "Nächster Beitrag"
- id: recentProjects
translation: "Projekte"
- id: moreProjects
translation: "Weitere Projekte"
- id: read - id: read
translation: "Lesezeit" translation: "Lesezeit"
- id: minutesShort - id: minutesShort
translation: "Min." translation: "Min."
- id: words - id: words
translation: "Wörter" translation: "Wörter"
- id: copyright - id: photoFull
translation: "Copyright" translation: "Foto von %s auf %s"
- id: rights - id: photoShort
translation: "Alle Rechte vorbehalten" translation: "Foto von {{ . }}"
- id: photoBy - id: draft
translation: "Foto von" translation: "Entwurf"
- id: photoOn
translation: "auf" # List pages
- id: article - id: article
translation: "Artikel" translation: "Artikel"
- id: articles - id: articles
translation: "Artikel" translation: "Artikel"
- id: more
translation: "Weitere {{ . }}"
# Sharing
- id: shareLink
translation: "Diese Seite teilen"
- id: copiedToClipboard
translation: "Der Text befindet sich in die Zwischenablage"
- id: link
translation: "Link zur Webseite"
- id: code
translation: "Code"
# Pagination
- id: paginationNav
translation: "Navigation auf der Seite"
- id: paginationPrevious - id: paginationPrevious
translation: "Vorherige" translation: "Vorherige"
- id: paginationNext - id: paginationNext
@@ -55,78 +45,65 @@
translation: "Erste" translation: "Erste"
- id: paginationLast - id: paginationLast
translation: "Letzte" translation: "Letzte"
- id: toggleSidebar
translation: "Menünavigation anzuzeigen oder auszublenden" # Navigation
- id: colorMode - id: colorMode
translation: "Modus" translation: "Thema umschalten"
- id: colorLight - id: colorLight
translation: "Licht" translation: "Light"
- id: colorDark - id: colorDark
translation: "Dunkel" translation: "Dark"
- id: colorAuto - id: colorAuto
translation: "Automatisch" translation: "Auto"
- id: toggleMainNav - id: toggleMainNav
translation: "Hauptmenü anzuzeigen oder auszublenden" translation: "Hauptmenü anzuzeigen oder auszublenden"
- id: home
translation: "Startseite"
- id: languageSwitcherLabel
translation: "Sprache"
# Table of contents
- id: toc
translation: "Auf dieser Seite"
- id: seeAlso
translation: "Siehe auch"
# Sidebar
- id: toggleSidebar
translation: "Menünavigation anzuzeigen oder auszublenden"
# Feature
- id: addedFeature
translation: "Eingefügt seit {{ . }}"
- id: deprecatedFeature
translation: "Veraltet seit {{ . }}"
# Versioning
- id: latest
translation: "neueste"
- id: allVersions
translation: "Alle Versionen"
- id: newerVersionAlert
translation: "Es gibt eine neuere Version von {{ . }}!"
# 404 page # 404 page
- id: pageNotFound - id: pageNotFound
translation: "Diese Seite existiert nicht. Versuche es über die" translation: "Diese Seite existiert nicht. Versuche es über die {{ . }}"
- id: pageNotFoundTitle - id: pageNotFoundTitle
translation: "Nicht gefunden" translation: "Nicht gefunden"
- id: pageNotFoundHome - id: pageNotFoundHome
translation: "Startseite" translation: "Startseite"
# Footer
- id: copyright
translation: "Copyright"
- id: rights
translation: "Alle Rechte vorbehalten"
- id: poweredBy
translation: "Ermöglicht durch {{ . }}."
# Navigation # Comments
- id: toggleNavigation
translation: "Navigation umschalten"
- id: languageSwitcherLabel
translation: "Sprache"
- id: gcseLabelShort
translation: "Suche"
- id: gcseLabelLong
translation: "Suche {{ .Site.Title }}"
- id: gcseClose
translation: "Schließen"
- id: home
translation: "Startseite"
# Staticman
- id: noComment
translation: "Kein Kommentar"
- id: oneComment
translation: "Kommentar"
- id: moreComment
translation: "Kommentare"
- id: useMarkdown
translation: "Du kannst Markdown-Syntax benutzen"
- id: yourName
translation: "Dein Name"
- id: yourEmail
translation: "Deine E-Mail-Adresse"
- id: yourWebsite
translation: "Deine Webseite"
# Delayed Disqus
- id: show - id: show
translation: "Zeige" translation: "Zeige"
- id: comments - id: comments
translation: "Kommentare" translation: "Kommentare"
# Related posts
- id: seeAlso
translation: "Siehe auch"
# Table of contents
- id: toc
translation: "Auf dieser Seite"
# Search
- id: ui_search
translation: "Durchsuche diese Seite..."
- id: ui_no_results
translation: "Keine Ergebnisse für"
# Draft
- id: draft
translation: "Entwurf"

View File

@@ -1,60 +1,42 @@
# Content # Single pages
- id: about
translation: "About"
- id: postedOnDate - id: postedOnDate
translation: "Posted on {{ . }}" translation: "Posted on {{ . }}"
- id: lastModified - id: lastModified
translation: "Last modified on {{ . }}" translation: "Last modified on {{ . }}"
- id: translationsLabel
translation: "Other languages: "
- id: translationsSeparator
translation: ", "
- id: more
translation: "More {{ . }}"
- id: readMore
translation: "Read More"
- id: moreBlog
translation: "More Posts"
- id: olderBlog
translation: "Older Posts"
- id: recentBlog
translation: "Recent Posts"
- id: newerBlog
translation: "Newer Posts"
- id: previousBlog
translation: "Previous Post"
- id: nextBlog
translation: "Next Post"
- id: recentProjects
translation: "Projects"
- id: moreFeatures
translation: "More Features"
- id: moreGuides
translation: "More Guides"
- id: moreOpensource
translation: "More Features"
- id: moreProjects
translation: "More Projects"
- id: moreUsers
translation: "More Users"
- id: read - id: read
translation: "read" translation: "read"
- id: minutesShort - id: minutesShort
translation: "min" translation: "min"
- id: words - id: words
translation: "words" translation: "words"
- id: copyright - id: photoFull
translation: "Copyright" translation: "Photo by %s on %s"
- id: rights - id: photoShort
translation: "All rights reserved" translation: "Photo by {{ . }}"
- id: photoBy
translation: "Photo by"
- id: photoOn - id: photoOn
translation: "on" translation: "on"
- id: draft
translation: "Draft"
# List pages
- id: article - id: article
translation: "Article" translation: "Article"
- id: articles - id: articles
translation: "Articles" translation: "Articles"
- id: more
translation: "More {{ . }}"
# Sharing
- id: shareLink
translation: "Share via"
- id: copiedToClipboard
translation: "copied to clipboard"
- id: link
translation: "Link"
- id: code
translation: "Code"
# Pagination
- id: paginationNav - id: paginationNav
translation: "Page navigation" translation: "Page navigation"
- id: paginationPrevious - id: paginationPrevious
@@ -65,8 +47,8 @@
translation: "First page" translation: "First page"
- id: paginationLast - id: paginationLast
translation: "Last page" translation: "Last page"
- id: toggleSidebar
translation: "Toggle sidebar navigation" # Navigation
- id: colorMode - id: colorMode
translation: "Toggle theme" translation: "Toggle theme"
- id: colorLight - id: colorLight
@@ -77,20 +59,28 @@
translation: "Auto" translation: "Auto"
- id: toggleMainNav - id: toggleMainNav
translation: "Toggle main navigation" translation: "Toggle main navigation"
- id: demo - id: home
translation: "Demo" translation: "Home"
- id: languageSwitcherLabel
translation: "Language"
# Table of contents
- id: toc
translation: "On this page"
- id: seeAlso
translation: "See also"
# Sidebar
- id: toggleSidebar
translation: "Toggle sidebar navigation"
# Feature
- id: addedFeature - id: addedFeature
translation: "Added in" translation: "Added in {{ . }}"
- id: deprecatedFeature - id: deprecatedFeature
translation: "Deprecated in" translation: "Deprecated in {{ . }}"
- id: shareLink
translation: "Share via" # Versioning
- id: copiedToClipboard
translation: "copied to clipboard"
- id: link
translation: "Link"
- id: code
translation: "Code"
- id: latest - id: latest
translation: "latest" translation: "latest"
- id: allVersions - id: allVersions
@@ -100,62 +90,22 @@
# 404 page # 404 page
- id: pageNotFound - id: pageNotFound
translation: "The page you are looking for does not exist or another error occurred. Try going back to our" translation: "The page you are looking for does not exist or another error occurred. Try going back to our {{ . }}."
- id: pageNotFoundTitle - id: pageNotFoundTitle
translation: "Page not found" translation: "Page not found"
- id: pageNotFoundHome - id: pageNotFoundHome
translation: "home page" translation: "home page"
# Navigation # Footer
- id: toggleNavigation - id: copyright
translation: "Toggle navigation" translation: "Copyright"
- id: languageSwitcherLabel - id: rights
translation: "Language" translation: "All rights reserved"
- id: gcseLabelShort - id: poweredBy
translation: "Search" translation: "Powered by {{ . }}."
- id: gcseLabelLong
translation: "Search {{ .Site.Title }}"
- id: gcseClose
translation: "Close"
- id: home
translation: "Home"
# Staticman # Comments
- id: noComment
translation: "No comment"
- id: oneComment
translation: "comment"
- id: moreComment
translation: "comments"
- id: useMarkdown
translation: "You can use Markdown syntax"
- id: yourName
translation: "Your name"
- id: yourEmail
translation: "Your email address"
- id: yourWebsite
translation: "You website"
# Delayed Disqus
- id: show - id: show
translation: "Show" translation: "Show"
- id: comments - id: comments
translation: "Comments" translation: "Comments"
# Related posts
- id: seeAlso
translation: "See also"
# Table of contents
- id: toc
translation: "On this page"
# Search
- id: ui_search
translation: "Search this site..."
- id: ui_no_results
translation: "No results for"
# Draft
- id: draft
translation: "Draft"

View File

@@ -1,64 +1,52 @@
# Content # Single pages
- id: about
translation: "Over mij"
- id: postedOnDate - id: postedOnDate
translation: "Gepubliceerd op {{ . }}" translation: "Gepubliceerd op {{ . }}"
- id: lastModified - id: lastModified
translation: "Laatst gewijzigd op {{ . }}" translation: "Laatst gewijzigd op {{ . }}"
- id: translationsLabel
translation: "Overige talen: "
- id: translationsSeparator
translation: ", "
- id: more
translation: "Meer {{ . }}"
- id: readMore
translation: "Lees meer"
- id: moreBlog
translation: "Meer berichten"
- id: olderBlog
translation: "Oudere berichten"
- id: recentBlog
translation: "Recente berichten"
- id: newerBlog
translation: "Nieuwere berichten"
- id: previousBlog
translation: "Vorig bericht"
- id: nextBlog
translation: "Volgend bericht"
- id: recentProjects
translation: "Projecten"
- id: moreProjects
translation: "Meer projecten"
- id: read - id: read
translation: "leestijd" translation: "leestijd"
- id: minutesShort - id: minutesShort
translation: "min" translation: "min"
- id: words - id: words
translation: "woorden" translation: "woorden"
- id: copyright - id: photoFull
translation: "Copyright" translation: "Foto van %s via %s"
- id: rights - id: photoShort
translation: "Alle rechten voorbehouden" translation: "Foto van {{ . }}"
- id: photoBy - id: draft
translation: "Foto van" translation: "Concept"
- id: photoOn
translation: "via" # List pages
- id: article - id: article
translation: "Artikel" translation: "Artikel"
- id: articles - id: articles
translation: "Artikelen" translation: "Artikelen"
- id: more
translation: "Meer {{ . }}"
# Sharing
- id: shareLink
translation: "Delen via"
- id: copiedToClipboard
translation: "gekopieerd naar clipboard"
- id: link
translation: "Link"
- id: code
translation: "Code"
# Pagination
- id: paginationNav - id: paginationNav
translation: "Pagina navigatie" translation: "Pagina navigatie"
- id: paginationPrevious - id: paginationPrevious
translation: "Vorige" translation: "Vorige pagina"
- id: paginationNext - id: paginationNext
translation: "Volgende" translation: "Volgende pagina"
- id: paginationFirst - id: paginationFirst
translation: "Eerste" translation: "Eerste pagina"
- id: paginationLast - id: paginationLast
translation: "Laatste" translation: "Laatste pagina"
- id: toggleSidebar
translation: "Toon of verberg navigatie" # Navigation
- id: colorMode - id: colorMode
translation: "Pas modus aan" translation: "Pas modus aan"
- id: colorLight - id: colorLight
@@ -69,18 +57,28 @@
translation: "Automatisch" translation: "Automatisch"
- id: toggleMainNav - id: toggleMainNav
translation: "Toon of verberg hoofdnavigatie" translation: "Toon of verberg hoofdnavigatie"
- id: home
translation: "Home"
- id: languageSwitcherLabel
translation: "Taal"
# Table of contents
- id: toc
translation: "Inhoudsopgave"
- id: seeAlso
translation: "Zie ook"
# Sidebar
- id: toggleSidebar
translation: "Toon of verberg navigatie"
# Feature
- id: addedFeature - id: addedFeature
translation: "Toegevoegd in" translation: "Toegevoegd in {{ . }}"
- id: deprecatedFeature - id: deprecatedFeature
translation: "Verouderd in" translation: "Afgeschaft in {{ . }}"
- id: shareLink
translation: "Delen via" # Versioning
- id: copiedToClipboard
translation: "gekopieerd naar clipboard"
- id: link
translation: "Link"
- id: code
translation: "Code"
- id: latest - id: latest
translation: "meest recente" translation: "meest recente"
- id: allVersions - id: allVersions
@@ -90,63 +88,22 @@
# 404 page # 404 page
- id: pageNotFound - id: pageNotFound
translation: "Deze pagina bestaat niet of er is een andere fout opgetreden. Ga terug naar het" translation: "Deze pagina bestaat niet of er is een andere fout opgetreden. Ga terug naar het {{ . }}."
- id: pageNotFoundTitle - id: pageNotFoundTitle
translation: "Niet gevonden" translation: "Pagina niet gevonden"
- id: pageNotFoundHome - id: pageNotFoundHome
translation: "begin" translation: "begin"
# Footer
- id: copyright
translation: "Copyright"
- id: rights
translation: "Alle rechten voorbehouden"
- id: poweredBy
translation: "Mede mogelijk gemaakt door {{ . }}."
# Navigation # Comments
- id: toggleNavigation
translation: "Toon/verberg navigatie"
- id: languageSwitcherLabel
translation: "Taal"
- id: gcseLabelShort
translation: "Zoeken"
- id: gcseLabelLong
translation: "Zoeken op {{ .Site.Title }}"
- id: gcseClose
translation: "Sluiten"
- id: home
translation: "Home"
# Staticman
- id: noComment
translation: "Geen commentaar"
- id: oneComment
translation: "commentaar"
- id: moreComment
translation: "commentaar"
- id: useMarkdown
translation: "Je kunt Markdown syntax gebruiken"
- id: yourName
translation: "Jouw naam"
- id: yourEmail
translation: "Jouw email adres"
- id: yourWebsite
translation: "Jouw website"
# Delayed Disqus
- id: show - id: show
translation: "Tonen" translation: "Tonen"
- id: comments - id: comments
translation: "Reacties" translation: "Reacties"
# Related posts
- id: seeAlso
translation: "Zie ook"
# Table of contents
- id: toc
translation: "Inhoudsopgave"
# Search
- id: ui_search
translation: "Zoeken op deze site..."
- id: ui_no_results
translation: "Geen resultaten voor"
# Draft
- id: draft
translation: "Concept"

View File

@@ -1,12 +1,13 @@
{{ define "main"}} {{ define "main"}}
<div class="container-xxl flex-fill d-flex align-content-center flex-wrap"> <div class="container-xxl flex-fill d-flex align-content-center flex-wrap feature">
<div class="w-100 text-center"> <div class="w-100 text-center">
<span class="text-secondary fw-bold"> <span class="text-secondary fw-bold">
{{ partial "assets/icon.html" (dict "icon" "fa face-frown fa-10x") }} {{ partial "assets/icon.html" (dict "icon" "fa face-frown fa-10x") }}
<p class="display-1 mt-3 fw-bold">404</p> <p class="display-1 mt-3 fw-bold">404</p>
<p class="fs-3">{{ T "pageNotFoundTitle" }}</p> <p class="fs-3">{{ T "pageNotFoundTitle" }}</p>
</span> </span>
<p>{{ T "pageNotFound" }} <a href="{{ "/" | relLangURL }}">{{ T "pageNotFoundHome" }}</a>.</p> {{- $home := printf "<a href=\"%s\">%s</a>" ("/" | relLangURL) (T "pageNotFoundHome") -}}
<p>{{ T "pageNotFound" $home | safeHTML }}</p>
</div> </div>
</div> </div>
{{ end }} {{ end }}

View File

@@ -4,7 +4,7 @@
"section" .Type "section" .Type
"home" false "home" false
"nested" .Params.Nested "nested" .Params.Nested
"title" .Title "title" (or .Title .Type)
"description" .Description "description" .Description
"content" .Content "content" .Content
"paginate" true) "paginate" true)

View File

@@ -47,10 +47,40 @@
{{- end -}} {{- end -}}
{{ if not (in (slice "docs" "minimal") .Layout) }} {{ if not (in (slice "docs" "minimal") .Layout) }}
{{ if .Params.thumbnail -}} {{- $thumbnail := "" -}}
{{- $credits := "" -}} {{- $credits := "" -}}
{{- if .Params.photoCredits }}{{ if .Params.PhotoSource }}{{ $credits = printf "%s %s %s %s" (T "photoBy") .Params.photoCredits (T "photoOn") .Params.PhotoSource }}{{ end }}{{ end -}}
{{- partial "assets/image.html" (dict "url" .Params.thumbnail "ratio" "21x9" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Params.title "caption" $credits) -}} {{- if reflect.IsMap .Params.Thumbnail -}}
{{- $thumbnail = .Params.Thumbnail.url -}}
{{- $author := "" -}}
{{- if and .Params.Thumbnail.authorURL "text" .Params.Thumbnail.author }}
{{- $author = partial "utilities/link" (dict "destination" .Params.Thumbnail.authorURL "text" .Params.Thumbnail.author) -}}
{{- else if .Params.Thumbnail.author }}
{{- $author = .Params.Thumbnail.author -}}
{{- end -}}
{{- $origin := "" -}}
{{- if and .Params.Thumbnail.originURL "text" .Params.Thumbnail.origin }}
{{- $origin = partial "utilities/link" (dict "destination" .Params.Thumbnail.originURL "text" .Params.Thumbnail.origin) -}}
{{- else if .Params.Thumbnail.origin }}
{{- $origin = .Params.Thumbnail.origin -}}
{{- end }}
{{- if and $author $origin }}
{{ $credits = printf (T "photoFull") $author $origin }}
{{ else if $author }}
{{ $credits = T "photoShort" $author }}
{{ end }}
{{ else }}
{{- $thumbnail = .Params.Thumbnail -}}
{{ if or .Params.photoCredits .Params.photoSource }}
{{ warnf "DEPRECATED: frontmatter variables `photoCredits` and `photoSource` have been deprecated in release v0.18: %s" .RelPermalink }}
{{ end }}
{{- if and .Params.photoCredits .Params.PhotoSource }}{{ $credits = printf (T "photoFull") .Params.photoCredits .Params.PhotoSource }}{{ end -}}
{{- end -}}
{{ if $thumbnail -}}
{{- partial "assets/image.html" (dict "url" $thumbnail "ratio" "21x9" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Params.title "caption" $credits) -}}
{{ end -}} {{ end -}}
{{ end }} {{ end }}
{{ .Content }} {{ .Content }}

View File

@@ -4,17 +4,26 @@
{{- define "main" -}} {{- define "main" -}}
{{- $page := . -}} {{- $page := . -}}
{{- $sections := site.Params.home.sections -}}
{{- if not $sections -}}
{{ range $section := site.Sections }}
{{ $sections = $sections | append $section.Type }}
{{ end }}
{{- end -}}
{{- range $index, $section := site.Params.home.sections -}} {{- range $index, $section := $sections -}}
{{- $sectionPage := site.GetPage "section" $section -}} {{- $sectionPage := site.GetPage "section" $section -}}
{{- $sectionURL := $sectionPage.RelPermalink -}} {{- $sectionURL := $sectionPage.RelPermalink -}}
{{- $title := $sectionPage.Title -}} {{- $title := or $sectionPage.Title $sectionPage.Type -}}
{{- $thumbnail := $sectionPage.Params.Thumbnail -}} {{- $thumbnail := (or (and (reflect.IsMap $sectionPage.Params.Thumbnail) $sectionPage.Params.Thumbnail.url) $sectionPage.Params.Thumbnail) -}}
{{- $icon := $sectionPage.Params.Icon -}} {{- $icon := $sectionPage.Params.Icon -}}
{{- $description := $sectionPage.Description -}}
{{- $content := $sectionPage.Content -}} {{- $content := $sectionPage.Content -}}
{{- $sectionTitle := strings.FirstUpper $sectionPage.Type -}}
{{- $moreTitle := (T (printf "more%s" (strings.FirstUpper $section))) -}} {{- $moreTitle := "" -}}
{{- with (index site.Params.sections $section) -}}
{{- with index . "reference" }}{{ $moreTitle = . }}{{ end -}}
{{- end -}}
{{- $moreTitle = or $moreTitle (printf (T "more" (pluralize $sectionTitle))) -}}
{{- partial "assets/section-list.html" (dict {{- partial "assets/section-list.html" (dict
"page" $page "page" $page

View File

@@ -139,23 +139,22 @@
{{- $attributes := .attributes -}} {{- $attributes := .attributes -}}
<a aria-label="{{ $title }}" {{ if ne $state "disabled" }}{{ with $href }}href="{{ . }}"{{ end }}{{ end }} <a aria-label="{{ $title }}" {{ if ne $state "disabled" }}{{ with $href }}href="{{ . }}"{{ end }}{{ end -}}
{{ with $id }}id="{{ . }}"{{ end }} {{- with $id }}id="{{ . }}"{{ end -}}
{{ with $target }}target="{{ . }}"{{ end }}{{ with $rel }} rel="{{ . }}"{{ end }} {{- with $target }}target="{{ . }}"{{ end }}{{ with $rel }} rel="{{ . }}"{{ end -}}
{{ with $toast }}data-toast-target="{{ $toast }}"{{ end }} {{- with $toast }}data-toast-target="{{ $toast }}"{{ end -}}
{{ with $clipboard }}data-clipboard="{{ $clipboard }}"{{ end }} {{- with $clipboard }}data-clipboard="{{ $clipboard }}"{{ end -}}
{{ if eq $type "button" }}class="btn btn-{{ if $outline }}outline-{{ end }}{{ $color }} {{ if ne $size "md"}}btn-{{ $size }}{{ end }} position-relative {{ if in (slice "disabled" "active") $state }}{{ $state }}{{ end }} {{ $class }}" {{- if eq $type "button" }}class="btn btn-{{ if $outline }}outline-{{ end }}{{ $color }} {{ if ne $size "md"}}btn-{{ $size }}{{ end }} position-relative {{ if in (slice "disabled" "active") $state }}{{ $state }}{{ end }} {{ $class -}}"
role="button" {{ if eq $state "disabled" }}aria-disabled="true"{{ end }} role="button" {{ if eq $state "disabled" }}aria-disabled="true"{{ end -}}
{{ else }} class="link-{{ $color }} position-relative {{ $class }}"{{ end }} {{- else }} class="link-{{ $color }} position-relative {{ $class }}"{{ end -}}
{{ with $tooltip }}data-bs-toggle="tooltip" data-bs-title="{{ . }}" data-bs-placement="{{ $placement }}"{{ end }} {{- with $tooltip }}data-bs-toggle="tooltip" data-bs-title="{{ . }}" data-bs-placement="{{ $placement }}"{{ end -}}
{{ with $collapse }}data-bs-toggle="collapse" aria-expanded="false" aria-controls="{{ . }}"{{ end }} {{- with $collapse }}data-bs-toggle="collapse" aria-expanded="false" aria-controls="{{ . }}"{{ end -}}
{{ if eq $state "active" }}data-bs-toggle="button" aria-pressed="true"{{ end }} {{- if eq $state "active" }}data-bs-toggle="button" aria-pressed="true"{{ end -}}
{{ if eq $state "inactive" }}data-bs-toggle="button" aria-pressed="false"{{ end }} {{- if eq $state "inactive" }}data-bs-toggle="button" aria-pressed="false"{{ end -}}
{{ range $key, $val := $attributes }} {{- range $key, $val := $attributes -}}
{{ print $key | safeHTMLAttr }}="{{ $val }}" {{- print $key | safeHTMLAttr }}="{{ $val }}"
{{ end }} {{- end -}}
> >
<div class="d-flex justify-content-{{ $justify }}"> <div class="d-flex justify-content-{{ $justify }}">
<div class="my-auto">{{ $title }}</div> <div class="my-auto">{{ $title }}</div>
{{- with $icon }}<div class="align-self-center{{ if $title }}{{ if eq $order "first" }} order-first pe-1{{ else }} ps-1{{ end }}{{ end }}">{{ partial "assets/icon.html" (dict "icon" $icon) }}</div>{{ end }} {{- with $icon }}<div class="align-self-center{{ if $title }}{{ if eq $order "first" }} order-first pe-1{{ else }} ps-1{{ end }}{{ end }}">{{ partial "assets/icon.html" (dict "icon" $icon) }}</div>{{ end }}

View File

@@ -106,15 +106,16 @@
"footer" $footer "footer" $footer
"orientation" $orientation "orientation" $orientation
) -}} ) -}}
{{- if $element.RelPermalink -}} {{- if $element.RelPermalink -}}
{{- $params = merge $params (dict "path" $element.File.Path) -}} {{- $params = merge $params (dict "path" $element.File.Path) -}}
{{- else -}} {{- else -}}
{{- $thumbnail := (or (and (reflect.IsMap $element.Params.Thumbnail) $element.Params.Thumbnail.url) $element.Params.Thumbnail) -}}
{{- $params = merge $params (dict {{- $params = merge $params (dict
"title" $element.Title "title" $element.Title
"href" $element.RelPermalink "href" $element.RelPermalink
"description" (or $element.Description $element.Content) "description" (partial "utilities/GetDescription.html" $element)
"thumbnail" $element.Params.thumbnail "thumbnail" $thumbnail
"icon" $element.Params.icon "icon" $element.Params.icon
) -}} ) -}}
{{- end -}} {{- end -}}

View File

@@ -112,8 +112,8 @@
{{- with $page -}} {{- with $page -}}
{{- if not $title }}{{ $title = .Title }}{{ end -}} {{- if not $title }}{{ $title = .Title }}{{ end -}}
{{- if not $href }}{{ $href = .RelPermalink }}{{ end -}} {{- if not $href }}{{ $href = .RelPermalink }}{{ end -}}
{{- if not $description }}{{ $description = .Description }}{{ end -}} {{- if not $description }}{{ $description = partial "utilities/GetDescription.html" . }}{{ end -}}
{{- if not $thumbnail }}{{ $thumbnail = .Params.thumbnail }}{{ end -}} {{- if not $thumbnail }}{{ $thumbnail = (or (and (reflect.IsMap .Params.Thumbnail) .Params.Thumbnail.url) .Params.Thumbnail) }}{{ end -}}
{{- if not $icon }}{{ $icon = .Params.icon }}{{ end -}} {{- if not $icon }}{{ $icon = .Params.icon }}{{ end -}}
{{- end -}} {{- end -}}

View File

@@ -52,6 +52,7 @@
<div class="d-none d-md-block p-0"> <div class="d-none d-md-block p-0">
{{- range $index, $item := $list -}} {{- range $index, $item := $list -}}
{{- $odd := eq (mod $index 2) 1 -}} {{- $odd := eq (mod $index 2) 1 -}}
{{- $thumbnail := (or (and (reflect.IsMap $item.Params.Thumbnail) $item.Params.Thumbnail.url) $item.Params.Thumbnail) -}}
<div class="container ratio-section d-flex flex-column"> <div class="container ratio-section d-flex flex-column">
<div class="row pt-5 pb-5 align-items-center flex-fill row-cols-2"> <div class="row pt-5 pb-5 align-items-center flex-fill row-cols-2">
<div class="col-6{{ if $odd }} order-last{{ end }}"> <div class="col-6{{ if $odd }} order-last{{ end }}">
@@ -60,7 +61,7 @@
{{- $style = "reveal fade-bottom-n5 rotate-n5 ps-3" -}} {{- $style = "reveal fade-bottom-n5 rotate-n5 ps-3" -}}
{{- if $odd }}{{ $style = "reveal fade-bottom-5 rotate-5 pe-3" }}{{ end }} {{- if $odd }}{{ $style = "reveal fade-bottom-5 rotate-5 pe-3" }}{{ end }}
{{ end }} {{ end }}
{{ partial "partials/list-img.html" (dict "thumbnail" $item.Params.Thumbnail "style" $style "mode" $item.Params.colormode) }} {{ partial "partials/list-img.html" (dict "thumbnail" $thumbnail "style" $style "mode" $item.Params.colormode) }}
</div> </div>
<div class="col-6{{ if $odd }} order-first{{ end }} psw-lg-5 p-5"> <div class="col-6{{ if $odd }} order-first{{ end }} psw-lg-5 p-5">
{{ partial "partials/list-content.html" (dict "title" $item.Title "content" (or $item.Description $item.Content)) }} {{ partial "partials/list-content.html" (dict "title" $item.Title "content" (or $item.Description $item.Content)) }}
@@ -73,13 +74,14 @@
<div class="d-md-none"> <div class="d-md-none">
{{- range $index, $item := $list -}} {{- range $index, $item := $list -}}
{{- $odd := eq (mod $index 2) 1 -}} {{- $odd := eq (mod $index 2) 1 -}}
{{- $thumbnail := (or (and (reflect.IsMap $item.Params.Thumbnail) $item.Params.Thumbnail.url) $item.Params.Thumbnail) -}}
<div class="container d-flex flex-column"> <div class="container d-flex flex-column">
<div class="row pt-5 pb-5 align-items-center flex-fill row-cols-2"> <div class="row pt-5 pb-5 align-items-center flex-fill row-cols-2">
<div class="col-12 text-center"> <div class="col-12 text-center">
{{ partial "partials/list-img.html" (dict "thumbnail" $item.Params.Thumbnail "mode" $item.Params.colormode) }} {{ partial "partials/list-img.html" (dict "thumbnail" $thumbnail "mode" $item.Params.colormode) }}
</div> </div>
<div class="col-12 p-3"> <div class="col-12 p-3">
{{ partial "partials/list-content.html" (dict "title" $item.Title "content" (or $item.Description $item.Content)) }} {{ partial "partials/list-content.html" (dict "title" $item.Title "content" (partial "utilities/GetDescription.html" $item)) }}
</div> </div>
</div> </div>
</div> </div>

View File

@@ -93,14 +93,15 @@
{{ $header := $item.Title }} {{ $header := $item.Title }}
{{ $body := $item.Content }} {{ $body := $item.Content }}
{{ $show := eq $index 0}} {{ $show := eq $index 0}}
{{- $thumbnail := (or (and (reflect.IsMap $item.Params.Thumbnail) $item.Params.Thumbnail.url) $item.Params.Thumbnail) -}}
<div class="tab-pane{{ if $show }} active{{ end }}" id="nav-{{ $id }}-{{ $index }}" role="tabpanel" aria-labelledby="{{ $id }}-btn-{{ $index }}" tabindex="0"> <div class="tab-pane{{ if $show }} active{{ end }}" id="nav-{{ $id }}-{{ $index }}" role="tabpanel" aria-labelledby="{{ $id }}-btn-{{ $index }}" tabindex="0">
{{- if eq $pane "persona" -}} {{- if eq $pane "persona" -}}
{{- partial "assets/persona.html" (dict {{- partial "assets/persona.html" (dict
"title" $item.Title "title" $item.Title
"class" $class "class" $class
"color" $color "color" $color
"content" (or $item.Description $item.Content) "content" (partial "utilities/GetDescription.html" $item)
"thumbnail" $item.Params.Thumbnail "thumbnail" $thumbnail
) -}} ) -}}
{{- else -}} {{- else -}}
{{- (or $item.Description $item.Content) -}} {{- (or $item.Description $item.Content) -}}

View File

@@ -51,7 +51,7 @@
{{- if not $title }}{{ $title = .Title }}{{ end -}} {{- if not $title }}{{ $title = .Title }}{{ end -}}
{{- if not $href }}{{ $href = .RelPermalink }}{{ end -}} {{- if not $href }}{{ $href = .RelPermalink }}{{ end -}}
{{- if not $content }}{{ $content = .Content }}{{ end -}} {{- if not $content }}{{ $content = .Content }}{{ end -}}
{{- if not $thumbnail }}{{ $thumbnail = .Params.thumbnail }}{{ end -}} {{- if not $thumbnail }}{{ $thumbnail = (or (and (reflect.IsMap .Params.Thumbnail) .Params.Thumbnail.url) .Params.Thumbnail) }}{{ end -}}
{{- end -}} {{- end -}}
{{- $class := .class -}} {{- $class := .class -}}

View File

@@ -24,7 +24,7 @@
{{- $padding := "0" -}} {{- $padding := "0" -}}
{{- $header := "full" -}} {{- $header := "full" -}}
{{- $footer := "none" -}} {{- $footer := "none" -}}
{{- $style := "" -}} {{- $style := "border-0 card-zoom" -}}
{{- $homepage := 3 -}} {{- $homepage := 3 -}}
{{- $background := "" -}} {{- $background := "" -}}
{{- $layout := "card" -}} {{- $layout := "card" -}}
@@ -87,7 +87,6 @@
{{- $paginate = false -}} {{- $paginate = false -}}
{{- $max = int (math.Min $homepage $max) -}} {{- $max = int (math.Min $homepage $max) -}}
{{ end -}} {{ end -}}
{{- $cols = int (math.Min $cols $max) -}}
{{- $params := (dict {{- $params := (dict
"page" $page "page" $page

View File

@@ -4,6 +4,10 @@
{{- $copyright := printf "%s © %s %s %s." (T "copyright") (dateFormat "2006" now) .Site.Title (T "rights") }} {{- $copyright := printf "%s © %s %s %s." (T "copyright") (dateFormat "2006" now) .Site.Title (T "rights") }}
{{ cond (gt (len .Site.Copyright) 0) .Site.Copyright $copyright }} {{ cond (gt (len .Site.Copyright) 0) .Site.Copyright $copyright }}
{{ .Site.Params.footer.license | safeHTML }} {{ .Site.Params.footer.license | safeHTML }}
{{ if .Site.Params.main.endorse }}
{{ $link := partial "utilities/link" (dict "destination" (index site.Params.links "hinode") "text" "Hinode" "class" "link-secondary") }}
{{ T "poweredBy" $link | safeHTML }}
{{ end }}
</small> </small>
</div> </div>
</footer> </footer>

View File

@@ -1,10 +1,19 @@
{{ if .Site.Params.footer.socialTitle }}
{{ warnf "DEPRECATED: parameter `Params.home.socialTitle` has been deprecated in release v0.18"}}
{{ end }}
{{ if .Site.Params.footer.socialCaption }}
{{ warnf "DEPRECATED: parameter `Params.home.socialCaption` has been deprecated in release v0.18"}}
{{ end }}
{{- $tab := site.Params.main.externalLinks.tab -}} {{- $tab := site.Params.main.externalLinks.tab -}}
<div class="container-fluid"> <div class="container-fluid">
<div class="row row-cols-1 row-cols-sm-4 bg-primary p-3 bg-opacity-{{ .Site.Params.style.themeOpacity | default "25" | safeHTML }} align-items-center"> <div class="row row-cols-1 row-cols-sm-4 bg-primary p-3 bg-opacity-{{ .Site.Params.style.themeOpacity | default "25" | safeHTML }} align-items-center">
<div class="col col-md-2 d-none d-md-block"></div> <div class="col col-md-2 d-none d-md-block"></div>
<div class="col col-sm-6 col-md-4"> <div class="col col-sm-6 col-md-4">
<div class="fs-3 fw-bold">{{ .Site.Params.footer.socialTitle }}</div> {{ if gt .Site.Menus.social 0 }}
<p>{{ .Site.Params.footer.socialCaption }}</p> <div class="fs-3 fw-bold">{{ or .Site.Params.footer.socialTitle .Site.Params.social.title }}</div>
<p>{{ or .Site.Params.footer.socialCaption .Site.Params.social.caption }}</p>
{{ end }}
</div> </div>
<div class="col text-sm-start text-center col-sm-6 col-md-4"> <div class="col text-sm-start text-center col-sm-6 col-md-4">
{{ range .Site.Menus.social -}} {{ range .Site.Menus.social -}}

View File

@@ -7,17 +7,11 @@
{{ $.Scratch.Set "title" .Site.Title -}} {{ $.Scratch.Set "title" .Site.Title -}}
{{ end -}} {{ end -}}
{{ with .Description -}} {{ $description := or (partial "utilities/GetDescription.html" .) .Site.Params.main.description }}
{{ $.Scratch.Set "description" . -}} {{ $.Scratch.Set "description" $description -}}
{{ else -}}
{{ with .Summary | plainify -}}
{{ $.Scratch.Set "description" . -}}
{{ else -}}
{{ $.Scratch.Set "description" .Site.Params.main.description -}}
{{ end -}}
{{ end -}}
{{ with .Params.thumbnail -}} {{- $thumbnail := (or (and (reflect.IsMap .Params.Thumbnail) .Params.Thumbnail.url) .Params.Thumbnail) -}}
{{ with $thumbnail -}}
{{ $img := partial "utilities/GetImage.html" (dict "url" .) -}} {{ $img := partial "utilities/GetImage.html" (dict "url" .) -}}
{{ with $img -}} {{ with $img -}}
{{ $dim := "1280x640" -}} {{ $dim := "1280x640" -}}
@@ -58,7 +52,7 @@
{{ end -}} {{ end -}}
{{ if .IsHome -}} {{ if .IsHome -}}
<title>{{ .Site.Title }} {{ .Site.Params.main.separator }} {{ .Site.Params.head.tagline }}</title> <title>{{ .Site.Title }} {{ if .Site.Params.head.tagline }} {{ .Site.Params.main.separator }} {{ .Site.Params.head.tagline }}{{ end }}</title>
{{ else -}} {{ else -}}
<title>{{ .Site.Title }} {{ .Site.Params.main.separator }} {{ .Title }}</title> <title>{{ .Site.Title }} {{ .Site.Params.main.separator }} {{ .Title }}</title>
{{ end -}} {{ end -}}

View File

@@ -1,20 +1,21 @@
<div class="container-fluid flex-fill bg-primary bg-opacity-{{ .Site.Params.style.themeOpacity | default "25" | safeHTML }}"> <div class="container-fluid flex-fill feature">
<div class="container-xxl p-4"> <div class="row row-cols-1 row-cols-sm-4 h-100 bg-primary px-4 py-5 bg-opacity-{{ .Site.Params.style.themeOpacity | default "25" | safeHTML }} align-items-center">
<div class="row row-cols-1 row-cols-sm-3 align-items-center pt-5 pb-5 h-100"> <div class="col col-lg-2 d-none d-lg-block bg-info order-1"></div>
<div class="col col-md-2 d-none d-md-block"></div> <div class="col col-sm-6 col-lg-4 text-center text-sm-start order-3 order-sm-2">
<div class="col col-sm-6 col-md-4 text-center text-sm-start"> <p class="display-4">{{ .Title }}</p>
<p class="display-4">{{ .Title }}</p> <p>{{ .Content }}<p>
<p>{{ .Content }}</p>
{{ if .Site.Params.feature.link }}
<p><a class="btn btn-primary" href="{{ .Site.Params.feature.link | safeURL }}" role="button">{{ .Site.Params.feature.caption | default (T "about") }}</a></p>
{{ end }}
</div>
<div class="col col-sm-6 col-md-4">
{{ if .Site.Params.home.featurePhoto }}
{{- partial "assets/image.html" (dict "url" .Site.Params.home.featurePhoto "ratio" "4x3" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Site.Title) -}}
{{ end }}
</div>
<div class="col col-md-2 d-none d-md-block"></div>
</div> </div>
<div class="col text-sm-start text-center col-sm-6 col-lg-4 order-2 order-sm-3">
{{- $thumbnail := (or (and (reflect.IsMap .Params.Thumbnail) .Params.Thumbnail.url) .Params.Thumbnail) -}}
{{- $thumbnail = or $thumbnail .Site.Params.home.featurePhoto -}}
{{ if .Site.Params.home.featurePhoto }}
{{ warnf "DEPRECATED: parameter `Params.home.featurePhoto` has been deprecated in release v0.18"}}
{{ end }}
{{- if $thumbnail -}}
{{- partial "assets/image.html" (dict "url" $thumbnail "ratio" "16x9" "outerClass" "img-wrap" "innerClass" "rounded" "title" .Site.Title) -}}
{{ end }}
<div class="pb-5 d-block d-sm-none"></div>
</div>
<div class="col col-lg-2 d-none d-lg-block bg-info order-4"></div>
</div> </div>
</div> </div>

View File

@@ -0,0 +1,18 @@
{{- $page := . -}}
{{- if ne (printf "%T" $page) "*hugolib.pageState" -}}
{{- errorf "partial [utilities/GetDescription.html] - Expected page context" -}}
{{- end -}}
{{- $description := "" -}}
{{- if not $page.RelPermalink -}}
{{- $description = $page.Content -}}
{{ else }}
{{- $description = $page.Description -}}
{{- end -}}
{{- if not $description -}}
{{- $description = $page.Summary -}}
{{- if $page.Truncated }}{{ $description = print $description "..." }}{{ end -}}}
{{- end -}}
{{- return $description -}}

View File

@@ -42,4 +42,4 @@
{{- $class := .class -}} {{- $class := .class -}}
<a {{ with $class }}class="{{ . }}" {{ end }}href="{{ $destination | safeURL }}"{{ with $target }} target="{{ . }}"{{ end }}{{ with $rel }} rel="{{ . }}"{{ end }}>{{ $text }}</a> <a {{ with $class }}class="{{ . }}" {{ end }}href="{{ $destination | safeURL }}"{{ with $target }} target="{{ . }}"{{ end }}{{ with $rel }} rel="{{ . }}"{{ end }}>{{ $text }}</a>

View File

@@ -97,7 +97,7 @@
data-bs-target=".multi-{{ $id }}" data-bs-target=".multi-{{ $id }}"
aria-expanded="false" aria-expanded="false"
aria-controls="body-{{ $id }} footer-{{ $id }}"> aria-controls="body-{{ $id }} footer-{{ $id }}">
<small>{{ if $full }}{{ strings.TrimPrefix $basePath $file }}{{ else }}{{ path.Base $file }}{{ end }}</small> <small>{{ if $full }}{{ strings.TrimPrefix "/" (strings.TrimPrefix $basePath $file) }}{{ else }}{{ path.Base $file }}{{ end }}</small>
</a> </a>
</li> </li>
</ul> </ul>

View File

@@ -4,7 +4,9 @@
"version": Required version string, expects semver notation with a "v" prefix. "version": Required version string, expects semver notation with a "v" prefix.
"state": Optional state, either "new" or "deprecated". "state": Optional state, either "new" or "deprecated".
"short": Optional flag to indicate the release button should use short notation. "short": Optional flag to indicate the release button should use short notation.
"size" Optional size of the button, either "sm", "md" (default), or "lg".
"class": Optional class attribute of the button element. "class": Optional class attribute of the button element.
"inline": If set, renders the release button inline (defaults to false).
--> -->
{{- $error := false -}} {{- $error := false -}}
@@ -47,25 +49,56 @@
{{- $color = "secondary" -}} {{- $color = "secondary" -}}
{{- end -}} {{- end -}}
{{- $icon := "" -}}
{{- $tooltip := "" -}}
{{- if eq $state "deprecated" -}}
{{- if $short -}}
{{- $icon = "fas trash-can" -}}
{{- $tooltip = T "deprecatedFeature" $version -}}
{{ else }}
{{- $title = T "deprecatedFeature" $version -}}
{{- end -}}
{{- else -}}
{{- if $short -}}
{{- $icon = "fas rocket" -}}
{{- $tooltip = T "addedFeature" $version -}}
{{ else }}
{{- $title = T "addedFeature" $version -}}
{{- end -}}
{{- end -}}
{{- if not $short -}} {{- if not $short -}}
{{- if eq $state "deprecated" -}} {{- if eq $state "deprecated" -}}
{{- $title = (printf "Deprecated in %s" $version) -}} {{- $title = T "deprecatedFeature" $version -}}
{{- else -}} {{- else -}}
{{- $title = (printf "Added in %s" $version) -}} {{- $title = T "addedFeature" $version -}}
{{- end -}} {{- end -}}
{{- end -}} {{- end -}}
{{- $size := "md" -}}
{{- with .Get "size" }}{{ $size = . }}{{ end -}}
{{- $supportedSizes := slice "sm" "md" "lg" -}}
{{- if not (in $supportedSizes $size) -}}
{{- errorf "Invalid value for param 'size': %s" .Position -}}
{{- $error = true -}}
{{- end -}}
{{- $class := .Get "class" -}} {{- $class := .Get "class" -}}
{{- if not $error -}} {{- if not $error -}}
<div class="pb-3"> {{- if not $inline }}<div class="pb-3">{{ end -}}
{{- partial "assets/button.html" (dict {{- partial "assets/button.html" (dict
"title" $title "title" $title
"href" (partial "partials/utilities/URLJoin.html" (dict "base" site.Params.docs.release "path" $version)) "href" (partial "partials/utilities/URLJoin.html" (dict "base" site.Params.docs.release "path" $version))
"size" "sm" "size" "sm"
"color" $color "color" $color
"outline" "true" "outline" "true"
"size" $size
"icon" $icon
"tooltip" $tooltip
"order" "first"
"class" (trim (printf "rounded-2 fw-semibold %s" $class) " ")) "class" (trim (printf "rounded-2 fw-semibold %s" $class) " "))
-}} -}}
</div> {{- if not $inline }}</div>{{ end -}}
{{- end -}} {{- end -}}

View File

@@ -1,14 +1,14 @@
# toml-docs-start netlify # toml-docs-start netlify
[build] [build]
publish = "public" publish = "exampleSite/public"
functions = "functions" # functions = "functions"
[build.environment] [build.environment]
NODE_VERSION = "18.16.1" NODE_VERSION = "18.17.0"
NPM_VERSION = "9.5.1" NPM_VERSION = "9.6.7"
[context.production] [context.production]
command = "npm run build" command = "npm run build:example"
[context.production.environment] [context.production.environment]
HUGO_VERSION = "0.110.0" HUGO_VERSION = "0.110.0"
@@ -63,20 +63,14 @@
Access-Control-Allow-Origin = "*" Access-Control-Allow-Origin = "*"
[context.deploy-preview] [context.deploy-preview]
command = "npm run build -- -b $DEPLOY_PRIME_URL" command = "npm run build:example -- -b $DEPLOY_PRIME_URL"
[context.branch-deploy] [context.branch-deploy]
command = "npm run build -- -b $DEPLOY_PRIME_URL" command = "npm run build:example -- -b $DEPLOY_PRIME_URL"
[context.next]
command = "npm run build"
[context.next.environment]
HUGO_ENV = "next"
[dev] [dev]
framework = "#custom" framework = "#custom"
command = "npm run start" command = "npm run start:example"
targetPort = 1313 targetPort = 1313
port = 8888 port = 8888
publish = "public" publish = "public"

18
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{ {
"name": "@gethinode/hinode", "name": "@gethinode/hinode",
"version": "0.17.4", "version": "0.18.0-beta",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "@gethinode/hinode", "name": "@gethinode/hinode",
"version": "0.17.4", "version": "0.18.0-beta",
"license": "MIT", "license": "MIT",
"devDependencies": { "devDependencies": {
"@fullhuman/postcss-purgecss": "^5.0.0", "@fullhuman/postcss-purgecss": "^5.0.0",
@@ -18,7 +18,7 @@
"eslint-plugin-import": "^2.28.0", "eslint-plugin-import": "^2.28.0",
"eslint-plugin-n": "^16.0.1", "eslint-plugin-n": "^16.0.1",
"eslint-plugin-promise": "^6.1.1", "eslint-plugin-promise": "^6.1.1",
"hugo-bin": "^0.112.1", "hugo-bin": "^0.113.0",
"markdownlint-cli2": "^0.8.1", "markdownlint-cli2": "^0.8.1",
"postcss-cli": "^10.1.0", "postcss-cli": "^10.1.0",
"purgecss-whitelister": "^2.4.0", "purgecss-whitelister": "^2.4.0",
@@ -3270,9 +3270,9 @@
} }
}, },
"node_modules/hugo-bin": { "node_modules/hugo-bin": {
"version": "0.112.1", "version": "0.113.0",
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.112.1.tgz", "resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.113.0.tgz",
"integrity": "sha512-Iguqted2G4zE5ZCH3onkhp9jPxZqxjbnQXxoYgo4RdVQhvRD16E3AzzUfbEiQM9yDM+fKhHCr2ajl9t8JTw/pA==", "integrity": "sha512-LivqvBvXU/sAydUTH4eMMdsvrUEcJvwJHyWyZX+PfXPyvkCVTUekJcJ0Pg+oYBZrg/nyriyB/xfBFi6JlgTGpg==",
"dev": true, "dev": true,
"funding": [ "funding": [
{ {
@@ -9619,9 +9619,9 @@
} }
}, },
"hugo-bin": { "hugo-bin": {
"version": "0.112.1", "version": "0.113.0",
"resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.112.1.tgz", "resolved": "https://registry.npmjs.org/hugo-bin/-/hugo-bin-0.113.0.tgz",
"integrity": "sha512-Iguqted2G4zE5ZCH3onkhp9jPxZqxjbnQXxoYgo4RdVQhvRD16E3AzzUfbEiQM9yDM+fKhHCr2ajl9t8JTw/pA==", "integrity": "sha512-LivqvBvXU/sAydUTH4eMMdsvrUEcJvwJHyWyZX+PfXPyvkCVTUekJcJ0Pg+oYBZrg/nyriyB/xfBFi6JlgTGpg==",
"dev": true, "dev": true,
"requires": { "requires": {
"@xhmikosr/bin-wrapper": "^11.0.2", "@xhmikosr/bin-wrapper": "^11.0.2",

View File

@@ -1,6 +1,6 @@
{ {
"name": "@gethinode/hinode", "name": "@gethinode/hinode",
"version": "0.17.4", "version": "0.18.0-beta",
"description": "Hinode is a clean documentation and blog theme for Hugo, an open-source static site generator", "description": "Hinode is a clean documentation and blog theme for Hugo, an open-source static site generator",
"keywords": [ "keywords": [
"hugo", "hugo",
@@ -17,10 +17,12 @@
"registry": "https://registry.npmjs.org/" "registry": "https://registry.npmjs.org/"
}, },
"scripts": { "scripts": {
"start": "hugo server --bind=0.0.0.0 --disableFastRender", "start": "hugo server --bind=0.0.0.0 --disableFastRender --printI18nWarnings",
"start:example": "hugo server --bind=0.0.0.0 --disableFastRender --printI18nWarnings -s exampleSite",
"start:prod": "hugo server --bind=0.0.0.0 --disableFastRender --printI18nWarnings -e production", "start:prod": "hugo server --bind=0.0.0.0 --disableFastRender --printI18nWarnings -e production",
"prebuild": "npm run clean:public && npm run -s mod:install", "prebuild": "npm run clean:public && npm run -s mod:install",
"build": "hugo --gc --minify", "build": "hugo --gc --minify",
"build:example": "npm run -s prebuild && hugo --gc --minify -s exampleSite",
"build:debug": "hugo -e debug --debug", "build:debug": "hugo -e debug --debug",
"build:preview": "npm run build -D -F", "build:preview": "npm run build -D -F",
"clean:public": "rimraf public", "clean:public": "rimraf public",
@@ -28,8 +30,8 @@
"lint": "npm run -s lint:scripts && npm run -s lint:styles && npm run -s lint:markdown", "lint": "npm run -s lint:scripts && npm run -s lint:styles && npm run -s lint:markdown",
"lint:scripts": "eslint assets/js", "lint:scripts": "eslint assets/js",
"lint:styles": "stylelint \"assets/scss/**/*.{css,sass,scss,sss,less}\"", "lint:styles": "stylelint \"assets/scss/**/*.{css,sass,scss,sss,less}\"",
"lint:markdown": "markdownlint-cli2 \"*.md\" \"content/**/*.md\"", "lint:markdown": "markdownlint-cli2 \"*.md\" \"content/**/*.md\" \"exampleSite/**/*.md\"",
"lint:markdown-fix": "markdownlint-cli2-fix \"*.md\" \"content/**/*.md\"", "lint:markdown-fix": "markdownlint-cli2-fix \"*.md\" \"content/**/*.md\" \"exampleSite/**/*.md\"",
"mod:clean": "hugo mod clean", "mod:clean": "hugo mod clean",
"mod:install": "hugo mod get ./... && npm run -s mod:vendor && npm run -s mod:tidy", "mod:install": "hugo mod get ./... && npm run -s mod:vendor && npm run -s mod:tidy",
"mod:update": "hugo mod get -u ./... && npm run -s mod:vendor && npm run -s mod:tidy", "mod:update": "hugo mod get -u ./... && npm run -s mod:vendor && npm run -s mod:tidy",
@@ -65,7 +67,7 @@
"eslint-plugin-import": "^2.28.0", "eslint-plugin-import": "^2.28.0",
"eslint-plugin-n": "^16.0.1", "eslint-plugin-n": "^16.0.1",
"eslint-plugin-promise": "^6.1.1", "eslint-plugin-promise": "^6.1.1",
"hugo-bin": "^0.112.1", "hugo-bin": "^0.113.0",
"markdownlint-cli2": "^0.8.1", "markdownlint-cli2": "^0.8.1",
"postcss-cli": "^10.1.0", "postcss-cli": "^10.1.0",
"purgecss-whitelister": "^2.4.0", "purgecss-whitelister": "^2.4.0",