Index: .github/workflows/ci.yml
===================================================================
--- .github/workflows/ci.yml	(revision fcc9f25df8bf9cd503222102f369b100c0a14867)
+++ .github/workflows/ci.yml	(revision 8951629117a58fe959c463673af73b10d562de7b)
@@ -22,4 +22,4 @@
     steps:
       - uses: actions/checkout@v4
-      # Bouwt het self-host image zodat een kapotte Dockerfile meteen opvalt.
+      # Build the self-host image so a broken Dockerfile is caught immediately.
       - run: docker build -t klonkt:ci .
Index: Dockerfile
===================================================================
--- Dockerfile	(revision fcc9f25df8bf9cd503222102f369b100c0a14867)
+++ Dockerfile	(revision 8951629117a58fe959c463673af73b10d562de7b)
@@ -1,17 +1,17 @@
 # syntax=docker/dockerfile:1
 # ──────────────────────────────────────────────────────────────────────────
-# Klonkt — zelf-host image. Multi-stage: native deps compileren in een volle
-# image, dan een slanke runtime. ffmpeg wordt meegebundeld via ffmpeg-static
-# (npm), cwebp komt uit het Debian-pakket 'webp'.
+# Klonkt — self-host image. Multi-stage: compile native deps in a full
+# image, then a slim runtime. ffmpeg is bundled via ffmpeg-static
+# (npm), cwebp comes from the Debian 'webp' package.
 # ──────────────────────────────────────────────────────────────────────────
 
-# ---- builder: native modules (better-sqlite3) + ffmpeg-static ophalen ----
+# ---- builder: fetch native modules (better-sqlite3) + ffmpeg-static ----
 FROM node:20-bookworm AS builder
 WORKDIR /app
-# Build-tools voor het geval better-sqlite3 from-source moet (anders prebuilt).
+# Build tools in case better-sqlite3 must build from source (otherwise prebuilt).
 RUN apt-get update && apt-get install -y --no-install-recommends python3 make g++ \
     && rm -rf /var/lib/apt/lists/*
 COPY package.json package-lock.json ./
-# Productie-deps; install-scripts draaien (better-sqlite3 build + ffmpeg download).
+# Production deps; install scripts run (better-sqlite3 build + ffmpeg download).
 RUN npm ci --omit=dev
 
@@ -21,17 +21,17 @@
     PORT=3000
 WORKDIR /app
-# cwebp = afbeelding→WebP (optioneel in de app, maar handig); ca-certificates
-# voor uitgaande HTTPS (license-server, SMTP, Google).
+# cwebp = image→WebP (optional in the app, but handy); ca-certificates
+# for outbound HTTPS (license server, SMTP, Google).
 RUN apt-get update && apt-get install -y --no-install-recommends webp ca-certificates \
     && rm -rf /var/lib/apt/lists/*
-# node_modules (incl. gecompileerde better-sqlite3 + gebundelde ffmpeg) uit builder.
+# node_modules (incl. compiled better-sqlite3 + bundled ffmpeg) from builder.
 COPY --from=builder /app/node_modules ./node_modules
-# App-broncode.
+# App source code.
 COPY . .
-# Persistente data leeft hier (DB, media, audio) — mount-punt voor een volume.
+# Persistent data lives here (DB, media, audio) — mount point for a volume.
 RUN mkdir -p storage/media storage/audio && chown -R node:node /app
 USER node
 EXPOSE 3000
-# Simpele healthcheck via Node's ingebouwde fetch (Node 20).
+# Simple healthcheck via Node's built-in fetch (Node 20).
 HEALTHCHECK --interval=30s --timeout=5s --start-period=20s --retries=3 \
   CMD node -e "fetch('http://127.0.0.1:'+(process.env.PORT||3000)+'/').then(r=>process.exit(r.ok?0:1)).catch(()=>process.exit(1))"
