diff --git a/frontend/messages/de.json b/frontend/messages/de.json
index 16718738..a7c1abdd 100644
--- a/frontend/messages/de.json
+++ b/frontend/messages/de.json
@@ -294,5 +294,16 @@
"enrich_done_body": "Alle Dokumente wurden bearbeitet.",
"enrich_back_to_list": "Zurück zur Liste",
"comment_empty_hint": "Noch keine Kommentare – starte die Diskussion!",
- "comment_start_discussion": "Diskussion starten →"
+ "comment_start_discussion": "Diskussion starten →",
+ "notification_bell_label": "Benachrichtigungen",
+ "notification_bell_unread_label": "{count} ungelesene Benachrichtigungen",
+ "notification_mark_all_read": "Alle gelesen",
+ "notification_empty": "Keine neuen Benachrichtigungen",
+ "notification_type_reply": "{actor} hat auf deinen Kommentar geantwortet",
+ "notification_type_mention": "{actor} hat dich in einem Kommentar erwähnt",
+ "notification_prefs_heading": "Benachrichtigungen",
+ "notification_pref_reply": "E-Mail, wenn jemand auf meinen Kommentar antwortet",
+ "notification_pref_mention": "E-Mail, wenn jemand mich in einem Kommentar erwähnt",
+ "mention_btn_label": "Person erwähnen",
+ "mention_popup_empty": "Keine Nutzer gefunden"
}
diff --git a/frontend/messages/en.json b/frontend/messages/en.json
index 462dea3b..7f5d0893 100644
--- a/frontend/messages/en.json
+++ b/frontend/messages/en.json
@@ -294,5 +294,16 @@
"enrich_done_body": "All documents have been processed.",
"enrich_back_to_list": "Back to list",
"comment_empty_hint": "No comments yet – start the discussion!",
- "comment_start_discussion": "Start discussion →"
+ "comment_start_discussion": "Start discussion →",
+ "notification_bell_label": "Notifications",
+ "notification_bell_unread_label": "{count} unread notifications",
+ "notification_mark_all_read": "Mark all read",
+ "notification_empty": "No new notifications",
+ "notification_type_reply": "{actor} replied to your comment",
+ "notification_type_mention": "{actor} mentioned you in a comment",
+ "notification_prefs_heading": "Notifications",
+ "notification_pref_reply": "Email when someone replies to my comment",
+ "notification_pref_mention": "Email when someone mentions me in a comment",
+ "mention_btn_label": "Mention person",
+ "mention_popup_empty": "No users found"
}
diff --git a/frontend/messages/es.json b/frontend/messages/es.json
index 0ae0b91a..d145b9e9 100644
--- a/frontend/messages/es.json
+++ b/frontend/messages/es.json
@@ -294,5 +294,16 @@
"enrich_done_body": "Todos los documentos han sido procesados.",
"enrich_back_to_list": "Volver a la lista",
"comment_empty_hint": "Aún no hay comentarios – ¡inicia la discusión!",
- "comment_start_discussion": "Iniciar discusión →"
+ "comment_start_discussion": "Iniciar discusión →",
+ "notification_bell_label": "Notificaciones",
+ "notification_bell_unread_label": "{count} notificaciones sin leer",
+ "notification_mark_all_read": "Marcar todo como leído",
+ "notification_empty": "No hay notificaciones nuevas",
+ "notification_type_reply": "{actor} respondió a tu comentario",
+ "notification_type_mention": "{actor} te mencionó en un comentario",
+ "notification_prefs_heading": "Notificaciones",
+ "notification_pref_reply": "Correo cuando alguien responde a mi comentario",
+ "notification_pref_mention": "Correo cuando alguien me menciona en un comentario",
+ "mention_btn_label": "Mencionar persona",
+ "mention_popup_empty": "No se encontraron usuarios"
}
diff --git a/frontend/src/lib/components/NotificationBell.svelte b/frontend/src/lib/components/NotificationBell.svelte
new file mode 100644
index 00000000..533ce5b0
--- /dev/null
+++ b/frontend/src/lib/components/NotificationBell.svelte
@@ -0,0 +1,304 @@
+
+
+
+ {notification.type === 'REPLY' + ? m.notification_type_reply({ actor: notification.actorName }) + : m.notification_type_mention({ actor: notification.actorName })} +
+{relativeTime(notification.createdAt)}
+