Initial commit: Hugo setup met Bootstrap

This commit is contained in:
2026-02-21 11:15:13 +01:00
commit a16546a971
30 changed files with 806 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
<!DOCTYPE html>
<html lang="nl">
<head>
{{ partial "head.html" . }}
</head>
<body>
{{ partial "header.html" . }}
<main class="my-5">
{{ block "main" . }}{{ end }}
</main>
{{ partial "footer.html" . }}
</body>
</html>

View File

@@ -0,0 +1,6 @@
{{ define "main" }}
<h1>{{ .Title }}</h1>
<div class="content">
{{ .Content }}
</div>
{{ end }}

View File

@@ -0,0 +1,8 @@
{{ define "main" }}
<article class="py-5">
<h1 class="display-4 fw-bold">{{ .Title }}</h1>
<div class="content mt-4">
{{ .Content }}
</div>
</article>
{{ end }}

9
layouts/index.html Normal file
View File

@@ -0,0 +1,9 @@
{{ define "main" }}
{{ partial "hero.html" . }}
<div class="container my-5">
{{ .Content }}
</div>
{{ end }}

View File

@@ -0,0 +1,5 @@
{{ $js := resources.Get "node_modules/bootstrap/dist/js/bootstrap.bundle.js" }} {{/* Gebruik de NIET-minified versie als bron */}}
{{ if $js }}
{{ $js = $js | resources.Minify | resources.Fingerprint }}
<script src="{{ $js.RelPermalink }}" integrity="{{ $js.Data.Integrity }}"></script>
{{ end }}

View File

@@ -0,0 +1,23 @@
<link rel="icon" href="/img/favicon.ico" sizes="any">
<link rel="apple-touch-icon" href="/img/apple-touch-icon.png">
<link rel="manifest" href="/site.webmanifest">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ block "title" . }}{{ .Title }} | {{ .Site.Title }}{{ end }}</title>
{{ $opts := dict "transpiler" "libsass" "targetPath" "css/main.css" "enableSourceMap" true }}
{{ $style := resources.Get "scss/main.scss" | css.Sass $opts | resources.Minify | resources.Fingerprint }}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.0/font/bootstrap-icons.css">
<link rel="stylesheet" href="{{ $style.RelPermalink }}" integrity="{{ $style.Data.Integrity }}">
<meta property="og:type" content="website">
<meta property="og:url" content="{{ .Permalink }}">
<meta property="og:title" content="{{ if .IsHome }}{{ .Site.Title }}{{ else }}{{ .Title }} | {{ .Site.Title }}{{ end }}">
<meta property="og:description" content="{{ with .Description }}{{ . }}{{ else }}{{ .Site.Params.description }}{{ end }}">
<meta property="og:image" content="{{ .Site.Params.seo.og_image | absURL }}">
<meta property="twitter:card" content="summary_large_image">
<meta property="twitter:url" content="{{ .Permalink }}">
<meta property="twitter:title" content="{{ if .IsHome }}{{ .Site.Title }}{{ else }}{{ .Title }} | {{ .Site.Title }}{{ end }}">
<meta property="twitter:description" content="{{ with .Description }}{{ . }}{{ else }}{{ .Site.Params.description }}{{ end }}">
<meta property="twitter:image" content="{{ .Site.Params.seo.og_image | absURL }}">

View File

@@ -0,0 +1,85 @@
<header>
<div class="top-bar py-2">
<div class="container d-flex justify-content-between align-items-center">
<nav class="contact-info" aria-label="Contactinformatie">
{{ if .Site.Params.telefoon }}
<a href="tel:{{ .Site.Params.telefoon | urlize }}" class="me-3 text-white text-decoration-none" aria-label="Bel ons op {{ .Site.Params.telefoon }}">
<i class="bi bi-telephone" aria-hidden="true"></i> {{ .Site.Params.telefoon }}
</a>
{{ end }}
{{ if .Site.Params.email }}
<a href="mailto:{{ .Site.Params.email }}" class="text-white text-decoration-none" aria-label="Stuur een e-mail naar {{ .Site.Params.email }}">
<i class="bi bi-envelope" aria-hidden="true"></i> {{ .Site.Params.email }}
</a>
{{ end }}
</nav>
{{ if .Site.Params.google_rating }}
<div class="google-reviews d-none d-md-block" aria-label="Google beoordeling: {{ .Site.Params.google_rating }} van de 5 sterren">
<span class="fw-bold" aria-hidden="true">G {{ .Site.Params.google_rating }}</span>
<span class="text-warning" aria-hidden="true">
{{ range (seq (int .Site.Params.google_rating)) }}★{{ end }}
</span>
</div>
{{ end }}
</div>
</div>
</header>
<nav class="navbar navbar-expand-lg navbar-light bg-white py-3 shadow-sm sticky-top" aria-label="Hoofdmenu">
<div class="container">
<a class="navbar-brand d-flex align-items-center" href="/" aria-label="Van Emous Mantelzorgwoningen Home">
{{ if .Site.Params.logo }}
<img src="{{ .Site.Params.logo | relURL }}" alt="Van Emous Logo" height="60" class="me-2">
{{ end }}
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav"
aria-controls="navbarNav" aria-expanded="false" aria-label="Wissel navigatiemenu">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto align-items-center">
{{ $currentPage := . }}
{{ range .Site.Menus.main }}
{{ if .HasChildren }}
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle px-3 {{ if $currentPage.IsMenuCurrent "main" . }}active{{ end }}"
href="#" id="navbarDropdown{{ .Identifier }}" role="button" data-bs-toggle="dropdown"
aria-expanded="false" aria-haspopup="true">
{{ .Pre | safeHTML }} {{ .Name }}
</a>
<ul class="dropdown-menu" aria-labelledby="navbarDropdown{{ .Identifier }}">
{{ range .Children }}
<li>
<a class="dropdown-item {{ if $currentPage.IsMenuCurrent "main" . }}active{{ end }}"
href="{{ .URL | relURL }}"
{{ if $currentPage.IsMenuCurrent "main" . }}aria-current="page"{{ end }}>
{{ .Name }}
</a>
</li>
{{ end }}
</ul>
</li>
{{ else }}
<li class="nav-item">
<a class="nav-link px-3 {{ if or ($currentPage.IsMenuCurrent "main" .) ($currentPage.HasMenuCurrent "main" .) }}active{{ end }}"
href="{{ .URL | relURL }}"
{{ if $currentPage.IsMenuCurrent "main" . }}aria-current="page"{{ end }}>
{{ .Pre | safeHTML }} {{ .Name }}
</a>
</li>
{{ end }}
{{ end }}
<li class="nav-item ms-lg-3">
<a href="/brochure" class="btn btn-cta" role="button">
Gratis brochure aanvragen <i class="bi bi-chevron-right" aria-hidden="true"></i>
</a>
</li>
</ul>
</div>
</div>
</nav>

View File

@@ -0,0 +1,18 @@
<section class="hero-section py-5 my-lg-5">
<div class="container">
<div class="row align-items-end">
<div class="col-lg-7">
<h1 class="display-3 mb-5">{{ .Params.hero.title }}</h1>
<a href="{{ .Params.hero.cta_link }}" class="btn btn-cta">
{{ .Params.hero.cta_text }} <i class="bi bi-chevron-right ms-2"></i>
</a>
</div>
<div class="col-lg-4 offset-lg-1">
<p class="lead mb-2">
{{ .Params.hero.subtitle }}
</p>
</div>
</div>
</div>
</section>