Index: src/services/i18n.js
===================================================================
--- src/services/i18n.js	(revision 8d054ca78b96ac3a4806f34e94230cd7da8f77a8)
+++ src/services/i18n.js	(revision 923235ee7a5656aa6ab0462142ad54aa41a2e964)
@@ -100,4 +100,5 @@
     'setup.sitename_ph': 'bijv. jouw artiestennaam',
     'setup.submit': 'Mijn site aanmaken',
+    'setup.username_note': 'Dit wordt je adres op de fediverse en kun je later niet meer wijzigen:',
     'auth.f_username': 'Gebruikersnaam (3-32 tekens, letters/cijfers/_-)',
     'auth.f_email': 'E-mail',
@@ -1115,4 +1116,5 @@
     'setup.sitename_ph': 'e.g. your artist name',
     'setup.submit': 'Create my site',
+    'setup.username_note': 'This becomes your address on the fediverse and can’t be changed later:',
     'auth.f_username': 'Username (3-32 chars, letters/digits/_-)',
     'auth.f_email': 'Email',
@@ -2126,4 +2128,5 @@
     'setup.sitename_ph': 'z. B. dein Künstlername',
     'setup.submit': 'Meine Seite erstellen',
+    'setup.username_note': 'Das wird deine Adresse im Fediverse und kann später nicht geändert werden:',
     'auth.f_username': 'Benutzername (3-32 Zeichen, Buchstaben/Ziffern/_-)',
     'auth.f_email': 'E-Mail',
Index: src/views/pages/auth-register.ejs
===================================================================
--- src/views/pages/auth-register.ejs	(revision 8d054ca78b96ac3a4806f34e94230cd7da8f77a8)
+++ src/views/pages/auth-register.ejs	(revision 923235ee7a5656aa6ab0462142ad54aa41a2e964)
@@ -22,5 +22,6 @@
     <label>
       <span><%= t('auth.f_username') %></span>
-      <input type="text" name="username" value="<%= username %>" required autocomplete="username" pattern="[a-zA-Z0-9_-]{3,32}">
+      <input type="text" id="setup-username" name="username" value="<%= username %>" required autocomplete="username" pattern="[a-zA-Z0-9_-]{3,32}">
+      <small class="setup-handle-hint"><%= t('setup.username_note') %> <code id="setup-handle">@username@…</code></small>
     </label>
     <label>
@@ -35,2 +36,19 @@
   </form>
 </div>
+
+<style>
+  .setup-handle-hint { display: block; margin-top: .35rem; font-size: .82rem; line-height: 1.4; color: var(--ink-soft, #888); }
+  .setup-handle-hint code { color: var(--accent); font-weight: 600; background: color-mix(in srgb, var(--accent) 12%, transparent); padding: .05rem .35rem; border-radius: 6px; white-space: nowrap; }
+</style>
+<script>
+(function () {
+  var u = document.getElementById('setup-username'), out = document.getElementById('setup-handle');
+  if (!u || !out) return;
+  function upd() {
+    var v = (u.value || '').toLowerCase().replace(/[^a-z0-9_-]/g, '') || 'username';
+    out.textContent = '@' + v + '@' + location.host;
+  }
+  u.addEventListener('input', upd);
+  upd();
+})();
+</script>
