Prototype bike frame

De laatste weken heb ik gewerkt aan een manier om mijn devlog niet enkel in Obsidian te schrijven, maar er ook meteen een volwaardige website van te maken met Hugo. Het resultaat: ik kan nu schrijven, bouwen en publiceren zonder mijn vertrouwde omgeving te verlaten. En dat voelt bijzonder vlot.

Installatie van Hugo

Voor ik aan de slag kon moest Hugo lokaal geïnstalleerd worden. Gelukkig gaat dat vrij eenvoudig:

  1. Download Hugo van de officiële site: https://gohugo.io
  2. Pak het bestand uit en plaats hugo.exe in een folder die in je PATH staat (bijvoorbeeld C:\Hugo\bin).
  3. Controleer de installatie met:
hugo version

Zie je een versienummer? Dan ben je klaar om te beginnen.

Mijn workflow in Obsidian

In mijn Obsidian-vault heb ik een aparte folder Hugo ingericht als root van de site. De structuur ziet er zo uit:

Hugo/
├─ archetypes/
├─ assets/
├─ content/
│ ├─ en/
│ │ ├─ posts/
│ │ └─ vision/
│ └─ nl/
│ ├─ posts/
│ └─ visie/
├─ layouts/
├─ public/
├─ static/
├─ themes/
├─ hugo.toml
└─ netlify.toml

Elke post schrijf ik rechtstreeks in Obsidian, gewoon in Markdown. Dat maakt schrijven licht en overzichtelijk.

Tweetalig systeem

Mijn devlog is tweetalig: Engels en Nederlands. In hugo.toml heb ik dit ingesteld:

[languages.en]
languageName = "English"
weight = 1
contentDir = "content/en"
[languages.nl]
languageName = "Nederlands"
weight = 2
contentDir = "content/nl"

Hugo zorgt er automatisch voor dat de juiste URL’s ontstaan, zoals /en/posts/ en /nl/visie/.

Hosting op Netlify

Voor de hosting gebruik ik Netlify. Het is gratis, snel en simpel. Mijn netlify.toml ziet er zo uit:

[build]
command = "hugo"
publish = "public"

Elke keer dat ik een build doe, kan ik via Netlify meteen live publiceren.

Publiceren met één klik

Het mooiste deel is dat ik mijn devlog rechtstreeks vanuit Obsidian kan publiceren met een eenvoudig CMD-script:

@echo off
setlocal
cd /d "%~dp0"
echo Building with Hugo...
hugo --gc --cleanDestinationDir
echo Deploying to Netlify (production)...
netlify deploy --prod --dir=public
pause >nul
endlocal

Met één klik bouwt Hugo de site en staat de update online. Geen gedoe, gewoon publiceren.

Reflectie

Het voelt heerlijk om schrijven, bouwen en publiceren allemaal in één omgeving te hebben.

“Met één klik staat mijn dagboek online — schrijven voelt zo weer een stapje lichter.”