Hoe deze blog werkt

Astro, markdown, een GitLab-repository en Cloudflare. En een taalmodel dat de spelling nakijkt en de Engelse versie schrijft.


Ook in het Engels

Deze blog is een statische site. Elke post is een markdownbestand in een GitLab-repository, en bij elke push bouwt Cloudflare de site opnieuw op.

De stack

  • Astro zet de markdown om naar HTML. Er draait geen JavaScript in de browser.
  • GitLab bewaart de bronbestanden en draait de CI.
  • Cloudflare Workers serveert de gebouwde bestanden vanaf hun netwerk.

Schrijven in het Nederlands, publiceren in twee talen

Ik schrijf in het Nederlands. Een CI-job kijkt de spelling na en maakt een Engelse vertaling. Elke vertaling onthoudt een hash van de Nederlandse tekst waaruit ze gemaakt is:

---
title: How this blog works
sourceHash: 3f9a1c0b7d2e
---

Past de hash niet meer bij het origineel, dan is de vertaling verouderd en maakt de job een nieuwe. Alles gebeurt op een aparte branch, dus ik lees de wijzigingen na voor ze live gaan.

Lokaal draaien

npm install
npm run dev        # http://localhost:4321
npm run translate  # vereist ANTHROPIC_API_KEY