b3b9fb7ac6
Hugo Extended site with 426 cocktail recipes from the open cocktail dataset. Dark amber/gold editorial aesthetic, Tailwind CSS v4, Alpine.js client-side search and filtering, HTMX page transitions, Docker + nginx production build. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
49 lines
1.5 KiB
HTML
49 lines
1.5 KiB
HTML
<!doctype html>
|
|
<html lang="{{ .Site.LanguageCode }}" class="scroll-smooth">
|
|
<head>
|
|
{{- partial "head.html" . -}}
|
|
</head>
|
|
<body
|
|
class="bg-bg text-ink font-sans min-h-screen flex flex-col antialiased"
|
|
hx-boost="true"
|
|
hx-select="#main-content"
|
|
hx-target="#main-content"
|
|
hx-swap="outerHTML"
|
|
hx-push-url="true"
|
|
>
|
|
<!-- HTMX progress bar -->
|
|
<div id="progress-bar" aria-hidden="true"></div>
|
|
|
|
{{- partial "nav.html" . -}}
|
|
|
|
<main id="main-content" class="flex-1" hx-history-elt>
|
|
{{- block "main" . }}{{- end }}
|
|
</main>
|
|
|
|
{{- partial "footer.html" . -}}
|
|
|
|
<!-- HTMX -->
|
|
<script src="https://unpkg.com/htmx.org@2.0.4/dist/htmx.min.js"></script>
|
|
|
|
<!-- Site JS — must load before Alpine so cocktailSearch() is defined -->
|
|
{{- $js := resources.Get "js/main.js" -}}
|
|
{{- if eq hugo.Environment "production" -}}
|
|
{{- $js = $js | minify | fingerprint "sha256" -}}
|
|
{{- end -}}
|
|
<script
|
|
src="{{ $js.RelPermalink }}"
|
|
{{ if eq hugo.Environment "production" }}integrity="{{ $js.Data.Integrity }}"{{ end }}
|
|
defer
|
|
></script>
|
|
|
|
<!-- Alpine.js -->
|
|
<script defer src="https://cdn.jsdelivr.net/npm/alpinejs@3.14.8/dist/cdn.min.js"></script>
|
|
|
|
{{- block "scripts" . }}{{- end }}
|
|
|
|
{{- if and (eq hugo.Environment "production") .Site.Params.umamiId -}}
|
|
<script defer src="{{ .Site.Params.umamiSrc }}" data-website-id="{{ .Site.Params.umamiId }}"></script>
|
|
{{- end -}}
|
|
</body>
|
|
</html>
|