Index: src/routes/posts.js
===================================================================
--- src/routes/posts.js	(revision 535f955817ec83f38e0bd69aafbc344a7f7c716a)
+++ src/routes/posts.js	(revision 8f6225cbfb7a439454829f7dec26b0891f4163f0)
@@ -16,4 +16,5 @@
 import PlaylistService from '../services/PlaylistService.js';
 import { audioUrl } from '../services/AudioStreamService.js';
+import { toWebp } from '../services/ImageWebpService.js';
 
 const __dirname = path.dirname(fileURLToPath(import.meta.url));
@@ -55,5 +56,5 @@
     if (err) return res.status(400).json({ error: err.message });
     if (!req.file) return res.status(400).json({ error: 'No file' });
-    const url = '/media/post-images/' + req.file.filename;
+    const url = '/media/post-images/' + toWebp(req.file);
     res.json({ url, size: req.file.size, mime: req.file.mimetype });
   });
