Add public monitoring features and CI updates

- Add status pages, incidents, badges, maintenance, bulk ops, and metrics
- Add Docker packaging, env example, and frontend routes
- Refresh GitHub workflows and project metadata
This commit is contained in:
Tomas Dvorak
2026-04-27 11:10:18 +02:00
parent 363d708e91
commit 8011d487f1
101 changed files with 16126 additions and 2028 deletions
+253 -32
View File
@@ -117,6 +117,11 @@ msgstr ""
msgid "Active"
msgstr "فعال"
#. placeholder {0}: statusCounts.active
#: src/components/domains-table/domains-table.tsx
msgid "Active ({0})"
msgstr ""
#: src/components/active-alerts.tsx
msgid "Active Alerts"
msgstr " هشدارهای فعال"
@@ -126,22 +131,29 @@ msgid "Active state"
msgstr "وضعیت فعال"
#: src/components/monitors-table/monitors-table.tsx
msgid "Add"
msgstr ""
#~ msgid "Add"
#~ msgstr ""
#: src/components/add-system.tsx
#: src/components/add-system.tsx
#: src/components/navbar.tsx
#: src/components/navbar.tsx
#: src/components/routes/settings/quiet-hours.tsx
#: src/components/routes/settings/quiet-hours.tsx
msgid "Add {foo}"
msgstr "افزودن {foo}"
#: src/components/domains-table/domains-table.tsx
msgid "Add Domain"
msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
#: src/components/monitors-table/monitors-table.tsx
msgid "Add Monitor"
msgstr ""
#: src/components/systems-table/systems-table.tsx
msgid "Add System"
msgstr ""
#: src/components/routes/settings/notifications.tsx
msgid "Add URL"
msgstr "افزودن آدرس اینترنتی"
@@ -191,6 +203,15 @@ msgstr "تاریخچه هشدارها"
msgid "Alerts"
msgstr "هشدارها"
#. placeholder {0}: data.length
#. placeholder {0}: stats.total
#. placeholder {0}: statusCounts.total
#: src/components/domains-table/domains-table.tsx
#: src/components/monitors-table/monitors-table.tsx
#: src/components/systems-table/systems-table.tsx
msgid "All ({0})"
msgstr ""
#: src/components/command-palette.tsx
#: src/components/containers-table/containers-table.tsx
#: src/components/navbar.tsx
@@ -203,7 +224,6 @@ msgstr "همه کانتینرها"
#: src/components/command-palette.tsx
#: src/components/routes/settings/quiet-hours.tsx
#: src/components/systems-table/systems-table.tsx
#: src/components/systems-table/systems-table.tsx
msgid "All Systems"
msgstr "همه سیستم‌ها"
@@ -211,6 +231,10 @@ msgstr "همه سیستم‌ها"
msgid "Are you sure you want to delete {name}?"
msgstr "آیا مطمئن هستید که می‌خواهید {name} را حذف کنید؟"
#: src/components/domains-table/domains-table.tsx
msgid "Are you sure you want to delete this domain? This action cannot be undone."
msgstr ""
#: src/components/routes/settings/alerts-history-data-table.tsx
msgid "Are you sure?"
msgstr "آیا مطمئن هستید؟"
@@ -340,6 +364,12 @@ msgstr "بایت (کیلوبایت بر ثانیه، مگابایت بر ثان
msgid "Cache / Buffers"
msgstr "حافظه پنهان / بافرها"
#: src/components/command-palette.tsx
#: src/components/routes/calendar.tsx
#: src/components/routes/home.tsx
msgid "Calendar"
msgstr ""
#: src/components/systemd-table/systemd-table.tsx
msgid "Can reload"
msgstr "می‌تواند بارگذاری مجدد شود"
@@ -352,6 +382,7 @@ msgstr "می‌تواند شروع شود"
msgid "Can stop"
msgstr "می‌تواند متوقف شود"
#: src/components/domains-table/domains-table.tsx
#: src/components/monitors-table/add-monitor-dialog.tsx
#: src/components/routes/settings/alerts-history-data-table.tsx
#: src/components/routes/settings/quiet-hours.tsx
@@ -376,8 +407,8 @@ msgid "Celsius (°C)"
msgstr "سلسیوس (°C)"
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "Certificate expiry notifications are only available for HTTPS monitors."
msgstr ""
#~ msgid "Certificate expiry notifications are only available for HTTPS monitors."
#~ msgstr ""
#: src/components/routes/settings/general.tsx
msgid "Change display units for metrics."
@@ -409,8 +440,8 @@ msgid "Check {email} for a reset link."
msgstr "ایمیل {email} خود را برای لینک بازنشانی بررسی کنید."
#: src/components/routes/monitor.tsx
msgid "Check History"
msgstr ""
#~ msgid "Check History"
#~ msgstr ""
#: src/components/routes/settings/layout.tsx
msgid "Check logs for more details."
@@ -450,6 +481,10 @@ msgstr "برای مشاهده اطلاعات بیشتر روی یک سیستم
msgid "Click to copy"
msgstr "برای کپی کردن کلیک کنید"
#: src/components/systems-table/systems-table.tsx
msgid "Columns"
msgstr ""
#: src/components/login/forgot-pass-form.tsx
#: src/components/login/forgot-pass-form.tsx
msgid "Command line instructions"
@@ -627,9 +662,17 @@ msgid "data.status"
msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "Days before expiry to notify"
msgid "Database Connection"
msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "Database Name"
msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
#~ msgid "Days before expiry to notify"
#~ msgstr ""
#: src/components/routes/system/info-bar.tsx
msgctxt "Default system layout option"
msgid "Default"
@@ -639,6 +682,7 @@ msgstr "پیش‌فرض"
msgid "Default time period"
msgstr "بازه زمانی پیش‌فرض"
#: src/components/domains-table/domains-table.tsx
#: src/components/routes/domain.tsx
#: src/components/routes/monitor.tsx
#: src/components/routes/settings/alerts-history-data-table.tsx
@@ -648,6 +692,10 @@ msgstr "بازه زمانی پیش‌فرض"
msgid "Delete"
msgstr "حذف"
#: src/components/domains-table/domains-table.tsx
msgid "Delete Domain"
msgstr ""
#: src/components/routes/settings/tokens-fingerprints.tsx
msgid "Delete fingerprint"
msgstr "حذف اثر انگشت"
@@ -699,8 +747,8 @@ msgid "Display"
msgstr "نمایش"
#: src/components/routes/domain.tsx
msgid "DNS Records"
msgstr ""
#~ msgid "DNS Records"
#~ msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "DNS Server (optional)"
@@ -723,6 +771,18 @@ msgstr "ورودی/خروجی شبکه داکر"
msgid "Documentation"
msgstr "مستندات"
#: src/components/routes/home.tsx
msgid "Domain and SSL expiry calendar"
msgstr ""
#: src/components/domains-table/domains-table.tsx
msgid "Domain Monitoring"
msgstr ""
#: src/components/command-palette.tsx
msgid "Domains"
msgstr ""
#. Context: System is down
#: src/components/alerts-history-columns.tsx
#: src/components/routes/system/info-bar.tsx
@@ -731,6 +791,11 @@ msgstr "مستندات"
msgid "Down"
msgstr "قطع"
#. placeholder {0}: stats.down
#: src/components/monitors-table/monitors-table.tsx
msgid "Down ({0})"
msgstr ""
#: src/components/systems-table/systems-table.tsx
msgid "Down ({downSystemsLength})"
msgstr "قطع ({downSystemsLength})"
@@ -851,10 +916,20 @@ msgstr "خروج فعال"
msgid "Expected Value"
msgstr ""
#. placeholder {0}: statusCounts.expired
#: src/components/domains-table/domains-table.tsx
msgid "Expired ({0})"
msgstr ""
#: src/components/routes/settings/tokens-fingerprints.tsx
msgid "Expires after one hour or on hub restart."
msgstr "پس از یک ساعت یا راه‌اندازی مجدد هاب منقضی می‌شود."
#. placeholder {0}: statusCounts.expiring
#: src/components/domains-table/domains-table.tsx
msgid "Expiring ({0})"
msgstr ""
#: src/components/routes/settings/alerts-history-data-table.tsx
msgid "Export"
msgstr "خروجی گرفتن"
@@ -914,6 +989,14 @@ msgstr ""
msgid "Failed: {0}"
msgstr "ناموفق: {0}"
#: src/components/domains-table/domains-table.tsx
msgid "Filter domains..."
msgstr ""
#: src/components/monitors-table/monitors-table.tsx
msgid "Filter monitors..."
msgstr ""
#: src/components/containers-table/containers-table.tsx
#: src/components/routes/settings/alerts-history-data-table.tsx
#: src/components/routes/system/chart-card.tsx
@@ -958,8 +1041,8 @@ msgid "General"
msgstr "عمومی"
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "General notification settings will be configured in the Notifications tab."
msgstr ""
#~ msgid "General notification settings will be configured in the Notifications tab."
#~ msgstr ""
#: src/components/routes/settings/quiet-hours.tsx
msgid "Global"
@@ -981,15 +1064,25 @@ msgstr "مصرف برق پردازنده گرافیکی"
msgid "GPU Usage"
msgstr "میزان استفاده از GPU"
#: src/components/domains-table/domains-table.tsx
#: src/components/monitors-table/monitors-table.tsx
#: src/components/routes/system/info-bar.tsx
#: src/components/systems-table/systems-table.tsx
msgid "Grid"
msgstr "جدول"
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "gRPC Keyword"
msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "Headers (JSON)"
msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "health"
msgstr ""
#: src/components/containers-table/containers-table-columns.tsx
msgid "Health"
msgstr "سلامتی"
@@ -1007,8 +1100,8 @@ msgid "Heartbeat sent successfully"
msgstr "ضربان قلب با موفقیت ارسال شد"
#: src/components/routes/domain.tsx
msgid "History"
msgstr ""
#~ msgid "History"
#~ msgstr ""
#: src/components/add-system.tsx
#: src/components/routes/settings/tokens-fingerprints.tsx
@@ -1016,6 +1109,10 @@ msgctxt "Button to copy install command"
msgid "Homebrew command"
msgstr "دستور Homebrew"
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "Host / Connection String"
msgstr ""
#: src/components/add-system.tsx
msgid "Host / IP"
msgstr "میزبان / IP"
@@ -1074,6 +1171,13 @@ msgstr "تصویر"
msgid "Inactive"
msgstr "غیرفعال"
#: src/components/command-palette.tsx
#: src/components/routes/home.tsx
#: src/components/routes/incidents.tsx
#: src/components/routes/incidents.tsx
msgid "Incidents"
msgstr ""
#: src/components/routes/settings/heartbeat.tsx
msgid "Interval"
msgstr "بازه زمانی"
@@ -1103,6 +1207,8 @@ msgstr ""
msgid "Language"
msgstr "زبان"
#: src/components/domains-table/domains-table.tsx
#: src/components/monitors-table/monitors-table.tsx
#: src/components/systems-table/systems-table.tsx
msgid "Layout"
msgstr "طرح‌بندی"
@@ -1150,6 +1256,10 @@ msgstr "وضعیت بارگذاری"
msgid "Loading..."
msgstr "در حال بارگذاری..."
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "localhost:3306"
msgstr ""
#: src/components/navbar.tsx
#: src/components/navbar.tsx
msgid "Log Out"
@@ -1178,10 +1288,19 @@ msgstr "به دنبال جایی برای ایجاد هشدار هستید؟ ر
msgid "Main PID"
msgstr "PID اصلی"
#. placeholder {0}: stats.maintenance
#: src/components/monitors-table/monitors-table.tsx
msgid "Maintenance ({0})"
msgstr ""
#: src/components/routes/settings/layout.tsx
msgid "Manage display and notification preferences."
msgstr "مدیریت تنظیمات نمایش و اعلان‌ها."
#: src/components/routes/home.tsx
msgid "Manage public status pages"
msgstr ""
#: src/components/add-system.tsx
#: src/components/routes/settings/tokens-fingerprints.tsx
msgid "Manual setup instructions"
@@ -1243,6 +1362,24 @@ msgstr ""
msgid "Monitor websites, APIs, and services"
msgstr ""
#: src/components/command-palette.tsx
#: src/components/navbar.tsx
#: src/components/navbar.tsx
msgid "Monitoring"
msgstr ""
#: src/components/command-palette.tsx
msgid "Monitors"
msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "MQTT Topic"
msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "mydb"
msgstr ""
#: src/components/add-system.tsx
#: src/components/alerts-history-columns.tsx
#: src/components/containers-table/containers-table-columns.tsx
@@ -1283,14 +1420,22 @@ msgstr "واحد شبکه"
msgid "No"
msgstr "خیر"
#: src/components/routes/monitor.tsx
msgid "No data available for selected time range"
msgstr ""
#: src/components/monitors-table/monitors-table.tsx
msgid "No monitors configured yet."
msgstr ""
#: src/components/monitors-table/monitors-table.tsx
msgid "No monitors match your search."
msgid "No monitors match your filters."
msgstr ""
#: src/components/monitors-table/monitors-table.tsx
#~ msgid "No monitors match your search."
#~ msgstr ""
#: src/components/command-palette.tsx
#: src/components/systemd-table/systemd-table.tsx
msgid "No results found."
@@ -1322,8 +1467,8 @@ msgid "Notifications"
msgstr "اعلان‌ها"
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "Notify when certificate expires"
msgstr ""
#~ msgid "Notify when certificate expires"
#~ msgstr ""
#: src/components/login/auth-form.tsx
msgid "OAuth 2 / OIDC support"
@@ -1364,13 +1509,17 @@ msgstr "سایر"
#: src/components/routes/domain.tsx
#: src/components/routes/monitor.tsx
msgid "Overview"
msgstr ""
#~ msgid "Overview"
#~ msgstr ""
#: src/components/alerts/alerts-sheet.tsx
msgid "Overwrite existing alerts"
msgstr "بازنویسی هشدارهای موجود"
#: src/components/command-palette.tsx
#: src/components/command-palette.tsx
#: src/components/command-palette.tsx
#: src/components/command-palette.tsx
#: src/components/command-palette.tsx
#: src/components/command-palette.tsx
#: src/components/command-palette.tsx
@@ -1387,8 +1536,13 @@ msgstr "صفحه {0} از {1}"
msgid "Pages / Settings"
msgstr "صفحات / تنظیمات"
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "password"
msgstr ""
#: src/components/login/auth-form.tsx
#: src/components/login/auth-form.tsx
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "Password"
msgstr "رمز عبور"
@@ -1417,6 +1571,11 @@ msgstr "توقف"
msgid "Paused"
msgstr "مکث شده"
#. placeholder {0}: stats.paused
#: src/components/monitors-table/monitors-table.tsx
msgid "Paused ({0})"
msgstr ""
#: src/components/systems-table/systems-table.tsx
msgid "Paused ({pausedSystemsLength})"
msgstr "مکث شده ({pausedSystemsLength})"
@@ -1425,6 +1584,11 @@ msgstr "مکث شده ({pausedSystemsLength})"
msgid "Payload format"
msgstr "فرمت پی‌لود"
#. placeholder {0}: stats.pending
#: src/components/monitors-table/monitors-table.tsx
msgid "Pending ({0})"
msgstr ""
#: src/components/routes/system/cpu-sheet.tsx
#: src/components/routes/system/cpu-sheet.tsx
msgid "Per-core average utilization"
@@ -1583,8 +1747,8 @@ msgid "Response"
msgstr ""
#: src/components/routes/monitor.tsx
msgid "Response Times"
msgstr ""
#~ msgid "Response Times"
#~ msgstr ""
#: src/components/systemd-table/systemd-table.tsx
msgid "Restarts"
@@ -1599,6 +1763,10 @@ msgstr "ادامه"
msgid "Retries"
msgstr ""
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "root"
msgstr ""
#: src/components/systems-table/systems-table-columns.tsx
msgctxt "Root disk label"
msgid "Root"
@@ -1662,12 +1830,16 @@ msgid "Search"
msgstr "جستجو"
#: src/components/command-palette.tsx
msgid "Search for systems or settings..."
msgstr "جستجو برای سیستم‌ها یا تنظیمات..."
#~ msgid "Search for systems or settings..."
#~ msgstr "جستجو برای سیستم‌ها یا تنظیمات..."
#: src/components/command-palette.tsx
msgid "Search for systems, monitors, domains or settings..."
msgstr ""
#: src/components/monitors-table/monitors-table.tsx
msgid "Search monitors..."
msgstr ""
#~ msgid "Search monitors..."
#~ msgstr ""
#: src/components/routes/settings/heartbeat.tsx
msgid "Seconds between pings (default: 60)"
@@ -1693,6 +1865,10 @@ msgstr "پینگ‌های خروجی دوره‌ای را به یک سرویس
msgid "Send test heartbeat"
msgstr "ارسال ضربان قلب آزمایشی"
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "sensor/temperature"
msgstr ""
#: src/components/routes/system/charts/network-charts.tsx
msgid "Sent"
msgstr "ارسال شد"
@@ -1741,8 +1917,12 @@ msgid "SMTP settings"
msgstr "تنظیمات SMTP"
#: src/components/systems-table/systems-table.tsx
msgid "Sort By"
msgstr "مرتب‌سازی بر اساس"
#~ msgid "Sort By"
#~ msgstr "مرتب‌سازی بر اساس"
#: src/components/routes/domain.tsx
#~ msgid "SSL Certificate"
#~ msgstr ""
#: src/components/routes/settings/quiet-hours.tsx
#: src/components/routes/settings/quiet-hours.tsx
@@ -1757,6 +1937,8 @@ msgid "State"
msgstr "وضعیت"
#: src/components/containers-table/containers-table-columns.tsx
#: src/components/domains-table/domains-table.tsx
#: src/components/monitors-table/monitors-table.tsx
#: src/components/monitors-table/monitors-table.tsx
#: src/components/routes/system/smart-table.tsx
#: src/components/systemd-table/systemd-table.tsx
@@ -1765,6 +1947,16 @@ msgstr "وضعیت"
msgid "Status"
msgstr "وضعیت"
#: src/components/routes/monitor.tsx
msgid "Status and response time over the selected period"
msgstr ""
#: src/components/command-palette.tsx
#: src/components/routes/home.tsx
#: src/components/routes/status-pages.tsx
msgid "Status Pages"
msgstr ""
#: src/components/systemd-table/systemd-table-columns.tsx
msgid "Sub State"
msgstr "وضعیت فرعی"
@@ -1789,7 +1981,6 @@ msgstr ""
#: src/components/add-system.tsx
#: src/components/alerts-history-columns.tsx
#: src/components/containers-table/containers-table-columns.tsx
#: src/components/navbar.tsx
#: src/components/routes/settings/quiet-hours.tsx
#: src/components/routes/settings/quiet-hours.tsx
#: src/components/routes/settings/quiet-hours.tsx
@@ -1817,6 +2008,8 @@ msgstr "سیستم‌ها"
msgid "Systems may be managed in a <0>config.yml</0> file inside your data directory."
msgstr "سیستم‌ها ممکن است در یک فایل <0>config.yml</0> درون دایرکتوری داده شما مدیریت شوند."
#: src/components/domains-table/domains-table.tsx
#: src/components/monitors-table/monitors-table.tsx
#: src/components/systems-table/systems-table.tsx
msgid "Table"
msgstr "جدول"
@@ -1944,6 +2137,10 @@ msgstr ""
msgid "Total: {0}"
msgstr "کل: {0}"
#: src/components/domains-table/domains-table.tsx
msgid "Track domain expiry dates and watch domains for purchase"
msgstr ""
#: src/components/systemd-table/systemd-table.tsx
msgid "Triggered by"
msgstr "فعال شده توسط"
@@ -2022,6 +2219,11 @@ msgstr "توکن جهانی"
msgid "Unknown"
msgstr "ناشناخته"
#. placeholder {0}: statusCounts.unknown
#: src/components/domains-table/domains-table.tsx
msgid "Unknown ({0})"
msgstr ""
#: src/components/systemd-table/systemd-table.tsx
#: src/components/systemd-table/systemd-table.tsx
msgid "Unlimited"
@@ -2033,6 +2235,11 @@ msgstr "نامحدود"
msgid "Up"
msgstr "فعال"
#. placeholder {0}: stats.up
#: src/components/monitors-table/monitors-table.tsx
msgid "Up ({0})"
msgstr ""
#: src/components/systems-table/systems-table.tsx
msgid "Up ({upSystemsLength})"
msgstr "فعال ({upSystemsLength})"
@@ -2089,6 +2296,10 @@ msgstr "میزان استفاده از پارتیشن ریشه"
msgid "Used"
msgstr "استفاده شده"
#: src/components/monitors-table/add-monitor-dialog.tsx
msgid "Username"
msgstr ""
#: src/components/command-palette.tsx
#: src/components/navbar.tsx
msgid "Users"
@@ -2103,10 +2314,16 @@ msgstr "بهره‌وری"
msgid "Value"
msgstr "مقدار"
#: src/components/domains-table/domains-table.tsx
#: src/components/monitors-table/monitors-table.tsx
#: src/components/systems-table/systems-table.tsx
msgid "View"
msgstr "مشاهده"
#: src/components/routes/home.tsx
msgid "View and manage incidents"
msgstr ""
#: src/components/routes/system/cpu-sheet.tsx
#: src/components/routes/system/disk-io-sheet.tsx
#: src/components/routes/system/network-sheet.tsx
@@ -2118,8 +2335,8 @@ msgid "View your 200 most recent alerts."
msgstr "۲۰۰ هشدار اخیر خود را مشاهده کنید."
#: src/components/systems-table/systems-table.tsx
msgid "Visible Fields"
msgstr "فیلدهای قابل مشاهده"
#~ msgid "Visible Fields"
#~ msgstr "فیلدهای قابل مشاهده"
#: src/components/routes/domain.tsx
#: src/components/routes/monitor.tsx
@@ -2162,6 +2379,10 @@ msgstr "هنگامی که فعال باشد، این توکن به عوامل ا
msgid "When using POST, each heartbeat includes a JSON payload with system status summary, list of down systems, and triggered alerts."
msgstr "هنگام استفاده از POST، هر ضربان قلب شامل یک پی‌لود JSON با خلاصه وضعیت سیستم، لیست سیستم‌های پایین و هشدارهای فعال شده است."
#: src/components/routes/domain.tsx
#~ msgid "WHOIS Info"
#~ msgstr ""
#: src/components/add-system.tsx
#: src/components/routes/settings/tokens-fingerprints.tsx
msgctxt "Button to copy install command"