diff --git a/web/messages/en.json b/web/messages/en.json
index 499ec22..1b62580 100644
--- a/web/messages/en.json
+++ b/web/messages/en.json
@@ -8,5 +8,23 @@
"back": "Back",
"photo_count": "{count} photos",
"view_photo": "View Photo",
- "load_more": "All loaded"
+ "load_more": "All loaded",
+ "no_photos": "No photos yet",
+ "no_data": "No data",
+ "load_failed": "Load failed",
+ "retry": "Retry",
+ "view_original": "View Original",
+ "original": "Original",
+ "high_quality": "High",
+ "thumbnail": "Thumbnail",
+ "loaded_all": "✓ Loaded all {count} photos",
+ "double_click_zoom": "Double-click to zoom",
+ "pinch_zoom": "Pinch to zoom",
+ "keyboard_zoom": "+/− to zoom",
+ "reset_zoom": "0 to reset",
+ "previous_photo": "Previous photo",
+ "next_photo": "Next photo",
+ "reset": "Reset",
+ "zoom_in": "Zoom in",
+ "zoom_out": "Zoom out"
}
diff --git a/web/messages/zh.json b/web/messages/zh.json
index 9a8476e..3394131 100644
--- a/web/messages/zh.json
+++ b/web/messages/zh.json
@@ -8,5 +8,23 @@
"back": "返回",
"photo_count": "{count} 张照片",
"view_photo": "查看照片",
- "load_more": "已全部加载"
+ "load_more": "已全部加载",
+ "no_photos": "暂无照片",
+ "no_data": "暂无数据",
+ "load_failed": "加载失败",
+ "retry": "重试",
+ "view_original": "查看原图",
+ "original": "原图",
+ "high_quality": "高清",
+ "thumbnail": "缩略",
+ "loaded_all": "✓ 已加载全部 {count} 张照片",
+ "double_click_zoom": "🖱️ 双击放大",
+ "pinch_zoom": "🤏 捏合缩放",
+ "keyboard_zoom": "⌨️ +/− 缩放",
+ "reset_zoom": "⌨️ 0 重置",
+ "previous_photo": "上一张",
+ "next_photo": "下一张",
+ "reset": "重置",
+ "zoom_in": "放大",
+ "zoom_out": "缩小"
}
diff --git a/web/src/lib/components/album/AlbumList.svelte b/web/src/lib/components/album/AlbumList.svelte
index 2a23d07..25ceb61 100644
--- a/web/src/lib/components/album/AlbumList.svelte
+++ b/web/src/lib/components/album/AlbumList.svelte
@@ -1,6 +1,7 @@
{#if albums.length === 0}
-