Files
homarr/packages/translation/src/lang/en.json
T

6475 lines
200 KiB
JSON

{
"init": {
"step": {
"start": {
"title": "Welcome to Homarr",
"subtitle": "Let's get started with setting up your Homarr instance.",
"description": "To get started, please select how you want to set up your Homarr instance.",
"action": {
"scratch": "Start from scratch",
"importOldmarr": "Import from Homarr before 1.0",
"restoreSqlite": "Restore from SQLite backup",
"restoreSqliteDescription": "Upload a full SQLite database backup from a previous Homarr instance. This will restore all boards, users, apps, integrations, and settings.",
"backToOptions": "← Back to setup options"
}
},
"import": {
"title": "Import data",
"subtitle": "You can import data from an existing Homarr instance.",
"dropzone": {
"title": "Drag the zip file here or click to browse",
"description": "The uploaded zip will be processed and you'll be able to select what you want to import"
},
"fileInfo": {
"action": {
"change": "Change file"
}
},
"importSettings": {
"title": "Import settings",
"description": "Configure the import behavior"
},
"boardSelection": {
"title": "Found {count} boards",
"description": "Choose all boards with the size you want to import",
"action": {
"selectAll": "Select all",
"unselectAll": "Unselect all"
}
},
"summary": {
"title": "Import summary",
"description": "In the below summary you can see what will be imported",
"action": {
"import": "Confirm import and continue"
},
"entities": {
"apps": "Apps",
"boards": "Boards",
"integrations": "Integrations",
"credentialUsers": "Credential users"
}
},
"tokenModal": {
"title": "Enter import token",
"field": {
"token": {
"label": "Token",
"description": "Enter the shown import token from your previous homarr instance"
}
},
"notification": {
"error": {
"title": "Invalid token",
"message": "The token you entered is invalid"
}
}
}
},
"user": {
"title": "Admin user",
"subtitle": "Specify the credentials for your administrator user.",
"notification": {
"success": {
"title": "User created",
"message": "The user was successfully created"
},
"error": {
"title": "User creation failed"
}
}
},
"group": {
"title": "External group",
"subtitle": "Specify the group that should be used for external users.",
"form": {
"name": {
"label": "Group name",
"description": "Name has to match admin group of external provider"
}
}
},
"settings": {
"title": "Settings",
"subtitle": "Configure server settings."
},
"integrations": {
"title": "Integrations",
"subtitle": "Select the services you use.",
"description": "Choose the integrations you'd like to connect. We'll set up your dashboard with matching widgets automatically.",
"action": {
"continue": "Continue",
"skip": "Skip for now"
},
"configure": {
"progress": "{current} of {total}",
"skip": "Skip this integration",
"finishing": "Setting up your dashboard...",
"error": {
"title": "Setup failed",
"message": "Something went wrong while setting up your dashboard. Please try again."
},
"helpers": {
"tooltip": "URL helpers",
"description": "These helpers try to guess the URL for your services. If it doesn't work, just type the address manually."
}
},
"urlTemplate": {
"label": "Base URL",
"placeholder": "homelab.local or 192.168.1.1",
"hint": "Enter your base domain or IP to auto-fill integration URLs",
"warning": "Setting your base URL now will auto-fill all integration URLs, saving you time during setup",
"preview": "e.g. {example}",
"mode": {
"subdomain": "Subdomain",
"hostPort": "Host:Port"
}
},
"docker": {
"detected": "Docker detected {count} services",
"detectedBreakdown": "{integrations} integrations · {apps} apps",
"summary": "Homarr detected {apps} apps, {integrations} of which have integrations built-in",
"appBadge": "App",
"appSectionLabel": "Apps to add to dashboard ({count} selected)",
"scanning": "Scanning Docker...",
"scanningDescription": "Looking for running containers on your system"
}
},
"finish": {
"title": "Finish setup",
"subtitle": "You are ready to go!",
"description": "You have successfully completed the setup process. You can now start using Homarr. Select your next action:",
"action": {
"goToBoard": "Go to {name} board",
"createBoard": "Create your first board",
"inviteUser": "Invite other users",
"docs": "Read the documentation"
}
}
},
"backToStart": "Back to start"
},
"user": {
"title": "Users",
"name": "User",
"page": {
"login": {
"title": "Log in to your account",
"subtitle": "Welcome back! Please enter your credentials"
},
"invite": {
"title": "Join Homarr",
"subtitle": "Welcome to Homarr! Please create your account",
"description": "You were invited by {username}"
},
"init": {
"title": "New Homarr installation",
"subtitle": "Please create the initial administrator user"
}
},
"field": {
"email": {
"label": "E-Mail",
"verified": "Verified"
},
"username": {
"label": "Username"
},
"password": {
"label": "Password",
"suggestionsTitle": "Password suggestions",
"suggestion": {
"length": "At least 8 characters",
"lowercase": "Includes lowercase letter",
"uppercase": "Includes uppercase letter",
"number": "Includes number",
"special": "Includes special symbol"
}
},
"passwordConfirm": {
"label": "Confirm password"
},
"previousPassword": {
"label": "Previous password"
},
"homeBoard": {
"label": "Home board"
},
"pingIconsEnabled": {
"label": "Use icons for pings"
},
"enableRightClickOnWidgets": {
"label": "Enable right-click on widgets",
"description": "Show Homarr's context menu when right-clicking a widget. Disable to use the browser's default menu (e.g. \"Open link in new tab\")."
},
"defaultSearchEngine": {
"label": "Default search engine"
},
"openSearchInNewTab": {
"label": "Open search results in new tab"
},
"ddgBangs": {
"label": "Enable DuckDuckGo bangs"
}
},
"error": {
"usernameTaken": "Username already taken"
},
"action": {
"login": {
"label": "Login",
"labelWith": "Login with {provider}",
"notification": {
"success": {
"title": "Login successful",
"message": "You are now logged in"
},
"error": {
"title": "Login failed",
"message": "Your login failed"
}
},
"forgotPassword": {
"label": "Forgotten your password?",
"description": "An administrator can use the following command to reset your password:"
}
},
"register": {
"label": "Create account",
"notification": {
"success": {
"title": "Account created",
"message": "Please log in to continue"
},
"error": {
"title": "Account creation failed",
"message": "Your account could not be created"
}
}
},
"create": "Create user",
"changePassword": {
"label": "Change password",
"notification": {
"success": {
"message": "Password changed successfully"
},
"error": {
"message": "Unable to change password"
}
}
},
"changeHomeBoard": {
"notification": {
"success": {
"message": "Home board changed successfully"
},
"error": {
"message": "Unable to change home board"
}
}
},
"changeSearchPreferences": {
"notification": {
"success": {
"message": "Search preferences changed successfully"
},
"error": {
"message": "Unable to change search preferences"
}
}
},
"changeFirstDayOfWeek": {
"notification": {
"success": {
"message": "First day of week changed successfully"
},
"error": {
"message": "Unable to change first day of week"
}
}
},
"changePingIconsEnabled": {
"notification": {
"success": {
"message": "Ping icons toggled successfully"
},
"error": {
"message": "Unable to toggle ping icons"
}
}
},
"changeDdgBangs": {
"notification": {
"success": {
"message": "DuckDuckGo bangs toggled successfully"
},
"error": {
"message": "Unable to toggle DuckDuckGo bangs"
}
}
},
"manageAvatar": {
"changeImage": {
"label": "Change image",
"notification": {
"success": {
"message": "The image changed successfully"
},
"error": {
"message": "Unable to change image"
},
"toLarge": {
"title": "Image is too large",
"message": "Max image size is {size}"
}
}
},
"removeImage": {
"label": "Remove image",
"confirm": "Are you sure you want to remove the image?",
"notification": {
"success": {
"message": "Image removed successfully"
},
"error": {
"message": "Unable to remove image"
}
}
}
},
"editProfile": {
"notification": {
"success": {
"message": "Profile updated successfully"
},
"error": {
"message": "Unable to update profile"
}
}
},
"delete": {
"label": "Delete user permanently",
"description": "Deletes this user including their preferences. Will not delete any boards. User will not be notified.",
"confirm": "Are you sure, that you want to delete the user {username} with his preferences?"
},
"select": {
"label": "Select user",
"notFound": "No user found"
},
"transfer": {
"label": "Select new owner"
}
}
},
"group": {
"title": "Groups",
"name": "Group",
"search": "Find a group",
"field": {
"name": "Name",
"members": "Members",
"homeBoard": {
"label": "Home board",
"description": "Only boards accessible to the group can be selected"
},
"mobileBoard": {
"label": "Mobile board",
"description": "Only boards accessible to the group can be selected"
}
},
"permission": {
"admin": {
"title": "Admin",
"item": {
"admin": {
"label": "Administrator",
"description": "Members with this permission have full access to all features and settings"
}
}
},
"app": {
"title": "Apps",
"item": {
"create": {
"label": "Create apps",
"description": "Allow members to create apps"
},
"use-all": {
"label": "Use all apps",
"description": "Allow members to add any apps to their boards"
},
"modify-all": {
"label": "Modify all apps",
"description": "Allow members to modify all apps"
},
"full-all": {
"label": "Full app access",
"description": "Allow members to manage, use and delete any app"
}
}
},
"board": {
"title": "Boards",
"item": {
"create": {
"label": "Create boards",
"description": "Allow members to create boards"
},
"view-all": {
"label": "View all boards",
"description": "Allow members to view all boards"
},
"modify-all": {
"label": "Modify all boards",
"description": "Allow members to modify all boards (Does not include access control and danger zone)"
},
"full-all": {
"label": "Full board access",
"description": "Allow members to view, modify, and delete all boards (Including access control and danger zone)"
}
}
},
"integration": {
"title": "Integrations",
"item": {
"create": {
"label": "Create integrations",
"description": "Allow members to create integrations"
},
"use-all": {
"label": "Use all integrations",
"description": "Allows members to add any integrations to their boards"
},
"interact-all": {
"label": "Interact with any integration",
"description": "Allow members to interact with any integration"
},
"full-all": {
"label": "Full integration access",
"description": "Allow members to manage, use and interact with any integration"
}
}
},
"media": {
"title": "Medias",
"item": {
"upload": {
"label": "Upload medias",
"description": "Allow members to upload medias"
},
"view-all": {
"label": "View all medias",
"description": "Allow members to view all medias"
},
"full-all": {
"label": "Full media access",
"description": "Allow members to manage and delete any media"
}
}
},
"other": {
"title": "Other",
"item": {
"view-logs": {
"label": "View logs",
"description": "Allow members to view logs"
}
}
},
"search-engine": {
"title": "Search engines",
"item": {
"create": {
"label": "Create search engines",
"description": "Allow members to create search engines"
},
"modify-all": {
"label": "Modify all search engines",
"description": "Allow members to modify all search engines"
},
"full-all": {
"label": "Full search engine access",
"description": "Allow members to manage and delete any search engine"
}
}
}
},
"memberNotice": {
"mixed": "Some members are from external providers and cannot be managed here",
"external": "All members are from external providers and cannot be managed here"
},
"reservedNotice": {
"message": "This group is reserved for system use and restricts some actions. <checkoutDocs></checkoutDocs>"
},
"action": {
"create": {
"label": "New group",
"notification": {
"success": {
"message": "The group was successfully created"
},
"error": {
"message": "The group could not be created"
}
}
},
"transfer": {
"label": "Transfer ownership",
"description": "Transfer ownership of this group to another user.",
"confirm": "Are you sure you want to transfer ownership for the group {name} to {username}?",
"notification": {
"success": {
"message": "Transfered group {group} successfully to {user}"
},
"error": {
"message": "Unable to transfer ownership"
}
}
},
"addMember": {
"label": "Add member"
},
"removeMember": {
"label": "Remove member",
"confirm": "Are you sure you want to remove {user} from this group?"
},
"delete": {
"label": "Delete group",
"description": "Once you delete a group, there is no going back. Please be certain.",
"confirm": "Are you sure you want to delete the group {name}?",
"notification": {
"success": {
"message": "Deleted group {name} successfully"
},
"error": {
"message": "Unable to delete group {name}"
}
}
},
"changePermissions": {
"notification": {
"success": {
"title": "Permissions saved",
"message": "Permissions have been saved successfully"
},
"error": {
"title": "Permissions not saved",
"message": "Permissions have not been saved"
}
}
},
"update": {
"notification": {
"success": {
"message": "The group {name} was saved successfully"
},
"error": {
"message": "Unable to save group {name}"
}
}
},
"select": {
"label": "Select group",
"notFound": "No group found"
},
"settings": {
"board": {
"notification": {
"success": {
"title": "Settings saved",
"message": "Board settings saved successfully"
},
"error": {
"title": "Failed to save settings",
"message": "Unable to save board settings"
}
}
}
},
"changePosition": {
"notification": {
"success": {
"message": "Position changed successfully"
},
"error": {
"message": "Unable to change position"
}
}
}
},
"defaultGroup": {
"name": "Default group",
"description": "{name} - All signed in users"
}
},
"app": {
"search": "Find an app",
"page": {
"list": {
"title": "Apps",
"noResults": {
"title": "There are no apps yet",
"action": "Create your first app"
}
},
"create": {
"title": "New app",
"notification": {
"success": {
"title": "Creation successful",
"message": "The app was successfully created"
},
"error": {
"title": "Creation failed",
"message": "The app could not be created"
}
}
},
"edit": {
"title": "Edit app",
"notification": {
"success": {
"title": "Changes applied successfully",
"message": "The app was successfully saved"
},
"error": {
"title": "Unable to apply changes",
"message": "The app could not be saved"
}
}
},
"delete": {
"title": "Delete app",
"message": "Are you sure you want to delete the app {name}?",
"notification": {
"success": {
"title": "Deletion successful",
"message": "The app was successfully deleted"
},
"error": {
"title": "Deletion failed",
"message": "Unable to delete the app"
}
}
}
},
"field": {
"name": {
"label": "Name"
},
"description": {
"label": "Description"
},
"url": {
"label": "Url"
},
"useDifferentUrlForPing": {
"checkbox": {
"label": "Use different URL for ping",
"description": "Useful if Homarr can directly access using an internal hostname or network to avoid bandwidth usage of ISP"
}
}
},
"action": {
"select": {
"label": "Select app",
"notFound": "No app found",
"search": "Search for an app",
"noResults": "No results",
"action": "Select {app}",
"title": "Select an app to add to this board"
},
"create": {
"title": "Create new app",
"description": "Create a new app ",
"action": "Open app creation"
},
"add": "Add an app"
}
},
"customWidget": {
"page": {
"list": {
"title": "Custom Widgets",
"noResults": "No custom widgets yet. Create your first one!",
"loading": "Loading..."
},
"create": {
"title": "Create Custom Widget",
"subtitle": "Define an API URL, authentication, and how to display the response data."
},
"edit": {
"title": "Edit Custom Widget"
}
},
"action": {
"create": "Create",
"import": "Import",
"save": "Save",
"delete": "Delete Custom Widget",
"deleteConfirm": "Are you sure you want to delete \"{name}\"? This action cannot be undone.",
"export": "Export",
"addMapping": "Add Mapping",
"addColumn": "Add Column",
"edit": "Edit",
"removeMapping": "Remove mapping",
"removeColumn": "Remove column",
"addItem": "Add Item",
"removeItem": "Remove item",
"addBar": "Add Bar",
"duplicate": "Duplicate",
"copyAiPrompt": "Copy AI prompt",
"enable": "Enable",
"disable": "Disable",
"menu": "Actions"
},
"field": {
"name": "Name",
"description": "Description",
"iconUrl": "Icon URL",
"url": "URL",
"authType": "Auth Type",
"headerName": "Header/Query Parameter Name",
"method": "Method",
"requestBody": "Request Body",
"displayType": "Display Type",
"jsonPath": "JSON Path",
"jsonPathHint": "Use JSONPath syntax to extract values, e.g. $.data.temperature or $.items[0].name",
"label": "Label",
"unit": "Unit",
"mappings": "Mappings",
"tablePath": "Array JSON Path",
"tablePathHint": "Path to the array in the response, e.g. $.data.items",
"columns": "Columns",
"header": "Header",
"items": "Items",
"gridColumns": "Grid Columns",
"cardStyle": "Card Style",
"bars": "Bars",
"valuePath": "Value JSON Path",
"maxPath": "Max Value JSON Path",
"showPercentage": "Show Percentage",
"barSize": "Bar Size",
"goodValues": "Good Values (comma-separated)",
"dotSize": "Dot Size",
"valueSize": "Value Size",
"labelPosition": "Label Position",
"kvLayout": "Layout",
"striped": "Striped Rows",
"compact": "Compact Mode",
"maxHeight": "Max Height (px)",
"color": "Color",
"buttonLabel": "Button Label",
"buttonColor": "Button Color",
"confirmText": "Confirmation Text",
"confirmTextHint": "If set, a confirmation dialog will appear before executing the request",
"successMessage": "Success Message",
"successMessageHint": "Message shown after successful execution",
"enabled": "Enabled",
"template": {
"label": "JSX Template",
"description": "Mantine JSX template. Access API response fields via data bindings (e.g. data.name). Use whitelisted components only. Forbidden: constructor, __proto__, eval, Function, window, document."
}
},
"placeholder": {
"exampleLabel": "CPU Temperature",
"exampleLabelShort": "CPU Temp",
"exampleHeader": "Name",
"exampleUnit": "°C",
"iconUrl": "https://...",
"url": "https://api.example.com/api/v1/status",
"headerName": "X-API-Key",
"jsonPath": "$.data.value",
"tablePath": "$.data.items",
"columnJsonPath": "$.name",
"valuePath": "$.data.used",
"maxPath": "$.data.total",
"goodValues": "online, true, up",
"color": "blue"
},
"cardStyleOption": {
"filled": "Filled",
"outline": "Outline",
"subtle": "Subtle"
},
"layoutOption": {
"list": "List",
"grid": "Grid"
},
"sizeOption": {
"sm": "Small",
"md": "Medium",
"lg": "Large",
"xl": "Extra Large"
},
"labelPositionOption": {
"above": "Above",
"below": "Below"
},
"fieldset": {
"general": "General",
"connection": "API Connection",
"display": "Display Configuration"
},
"displayTypeDescription": {
"singleValue": "Show one extracted value with a label and unit",
"keyValue": "Show multiple labeled values side by side",
"table": "Show rows of data in a table format",
"statGrid": "Colored stat cards in a grid — like Pi-Hole or Speedtest widgets",
"progressBars": "Progress bars showing usage or completion — for disk, memory, quotas",
"statusIndicator": "Colored status dots showing online/offline or health states",
"countGrid": "Compact number + label counters in a tight grid",
"raw": "Pretty-printed JSON output for debugging",
"actionButton": "A button that triggers a request when clicked",
"customJsx": "Custom JSX layout using whitelisted Mantine components with full API data binding"
},
"method": {
"GET": "GET",
"POST": "POST",
"PUT": "PUT",
"DELETE": "DELETE",
"PATCH": "PATCH"
},
"authType": {
"none": "None",
"bearer": "Bearer Token",
"basic": "Basic Auth",
"apiKeyHeader": "API Key (Header)",
"apiKeyQuery": "API Key (Query)"
},
"displayType": {
"singleValue": "Single Value",
"keyValue": "Key-Value",
"table": "Table",
"statGrid": "Stat Grid",
"progressBars": "Progress Bars",
"statusIndicator": "Status Indicator",
"countGrid": "Count Grid",
"raw": "Raw JSON",
"actionButton": "Action Button",
"customJsx": "Custom JSX"
},
"secret": {
"apiKey": "API Key / Token",
"username": "Username",
"password": "Password",
"savedPlaceholder": "••••••• (saved, leave empty to keep)"
},
"preview": {
"title": "Preview",
"test": "Test",
"hint": "Click Test to preview the API response with your current configuration.",
"rawResponse": "Raw JSON response"
},
"notification": {
"created": "Widget \"{name}\" created successfully.",
"updated": "Widget \"{name}\" updated successfully.",
"deleted": "Widget \"{name}\" deleted.",
"imported": "Widget imported successfully.",
"aiPromptCopied": "AI prompt copied to clipboard",
"aiPromptDescription": "Copy a pre-built prompt to paste into any AI chatbot (ChatGPT, Claude, Gemini...). It includes the full widget schema and your API response so the AI can generate a ready-to-import JSON config for you.",
"aiPromptCopy": "Copy to clipboard",
"aiPromptNoResponse": "Tip: Run a test first to include your API response in the prompt for better results.",
"aiPromptCopyError": "Failed to copy prompt to clipboard. Your browser may not support this feature.",
"createError": "Failed to create widget. Check your API endpoint is reachable.",
"updateError": "Failed to update widget. Your changes were not saved.",
"importError": "Failed to import widget. Ensure the file is a valid custom widget JSON export.",
"exportError": "Failed to export widget.",
"duplicated": "Widget \"{name}\" duplicated.",
"duplicateError": "Failed to duplicate widget.",
"toggleError": "Failed to toggle widget status.",
"deleteError": "Failed to delete widget.",
"previewError": "Failed to fetch preview. Check the URL and try again.",
"executed": "Action executed successfully.",
"executeError": "Action failed: {error}"
},
"table": {
"name": "Name",
"url": "URL",
"display": "Display"
},
"widget": {
"disabled": "This widget is disabled"
}
},
"integration": {
"page": {
"list": {
"title": "Integrations",
"search": "Search integrations",
"noResults": {
"title": "There are no integrations yet"
}
},
"create": {
"title": "New {name} integration",
"notification": {
"success": {
"title": "Creation successful",
"message": "The integration was successfully created"
},
"error": {
"title": "Creation failed",
"message": "The integration could not be created"
}
},
"app": {
"option": {
"existing": {
"title": "Existing",
"label": "Select existing app"
},
"new": {
"title": "New",
"url": {
"label": "App url",
"description": "The url the app will open when accessed from the dashboard"
}
}
}
}
},
"edit": {
"title": "Edit {name} integration",
"notification": {
"success": {
"title": "Changes applied successfully",
"message": "The integration was successfully saved"
},
"error": {
"title": "Unable to apply changes",
"message": "The integration could not be saved"
}
},
"app": {
"action": {
"add": "Link an app",
"remove": "Unlink",
"select": "Select an app to link"
}
}
},
"delete": {
"title": "Delete integration",
"message": "Are you sure you want to delete the integration {name}?",
"notification": {
"success": {
"title": "Deletion successful",
"message": "The integration was successfully deleted"
},
"error": {
"title": "Deletion failed",
"message": "Unable to delete the integration"
}
}
}
},
"field": {
"name": {
"label": "Name"
},
"url": {
"label": "Url"
},
"attemptSearchEngineCreation": {
"label": "Create Search Engine",
"description": "Integration \"{kind}\" can be used with the search engines. Check this to automatically configure the search engine."
},
"app": {
"sectionTitle": "Linked App"
},
"createApp": {
"label": "Create app",
"description": "Create an app with the same name and icon as the integration. Leave the input field below empty to create the app with the integration URL."
},
"appHref": {
"placeholder": "Custom app URL"
},
"apiKeySettings": {
"label": "Get API key"
}
},
"action": {
"create": "New integration"
},
"grid": {
"widgetCount": "{count} widgets",
"noWidgets": "No widgets",
"detected": "Detected via Docker"
},
"category": {
"dnsHole": "DNS",
"mediaService": "Media",
"calendar": "Calendar",
"mediaSearch": "Search",
"mediaRelease": "Releases",
"mediaRequest": "Requests",
"downloadClient": "Downloads",
"usenet": "Usenet",
"torrent": "Torrent",
"miscellaneous": "Misc",
"smartHomeServer": "Smart Home",
"indexerManager": "Indexer",
"healthMonitoring": "Health",
"search": "Search",
"mediaTranscoding": "Transcoding",
"networkController": "Network",
"releasesProvider": "Releases",
"notifications": "Notifications",
"firewall": "Firewall",
"timetable": "Timetable",
"photoService": "Photos",
"documents": "Documents",
"notes": "Notes",
"mediaMonitoring": "Monitoring",
"speedtest": "Speed Test",
"analytics": "Analytics",
"vpn": "VPN",
"mediaLibrary": "Media Library",
"uptimeMonitoring": "Uptime Monitoring"
},
"testConnection": {
"action": {
"create": "Test connection and create",
"edit": "Test connection and save"
},
"error": {
"common": {
"cause": {
"title": "Cause with more details"
}
},
"unknown": {
"title": "Unknown error",
"description": "An unknown error occurred, open the cause below to see more details"
},
"parse": {
"title": "Parse error",
"description": "The response could not be parsed. Please verify that the URL is pointing to the base URL of the service."
},
"authorization": {
"title": "Authorization error",
"description": "The request was not authorized. Please verify that the credentials are correct and you have them configured with enough permissions."
},
"statusCode": {
"title": "Response error",
"description": "Received unexpected {statusCode} ({reason}) response from <url></url>. Please verify that the URL is pointing to the base URL of the integration.",
"otherDescription": "Received unexpected {statusCode} response from <url></url>. Please verify that the URL is pointing to the base URL of the integration.",
"reason": {
"badRequest": "Bad request",
"notFound": "Not found",
"tooManyRequests": "Too many requests",
"internalServerError": "Internal server error",
"serviceUnavailable": "Service unavailable",
"gatewayTimeout": "Gateway timeout"
}
},
"certificate": {
"title": "Certificate error",
"description": {
"expired": "The certificate has expired.",
"notYetValid": "The certificate is not yet valid.",
"untrusted": "The certificate is not trusted.",
"hostnameMismatch": "The certificate hostname does not match the URL."
},
"alert": {
"permission": {
"title": "Not enough permissions",
"message": "You are not allowed to trust or upload certificates. Please contact your administrator to upload the necessary root certificate."
},
"hostnameMismatch": {
"title": "Hostname mismatch",
"message": "The hostname in the certificate does not match the hostname you are connecting to. This could indicate a security risk, but you can still choose to trust this certificate."
},
"extract": {
"title": "CA certificate extraction failed",
"message": "Only self signed certificates without a chain can be fetched automatically. If you are using a self signed certificate, please make sure to upload the CA certificate manually. You can find instructions on how to do this <docsLink></docsLink>."
}
},
"action": {
"retry": {
"label": "Retry creation"
},
"trust": {
"label": "Trust certificate"
},
"upload": {
"label": "Upload certificate"
}
},
"hostnameMismatch": {
"confirm": {
"title": "Trust hostname mismatch",
"message": "Are you sure you want to trust the certificate with a hostname mismatch?"
},
"notification": {
"success": {
"title": "Trusted certificate",
"message": "Added hostname to trusted certificate list"
},
"error": {
"title": "Failed to trust certificate",
"message": "The certificate with a hostname mismatch could not be trusted"
}
}
},
"selfSigned": {
"confirm": {
"title": "Trust self signed certificate",
"message": "Are you sure you want to trust this self signed certificate?"
},
"notification": {
"success": {
"title": "Trusted certificate",
"message": "Added certificate to trusted certificate list"
},
"error": {
"title": "Failed to trust certificate",
"message": "Failed to add certificate to trusted certificate list"
}
}
},
"details": {
"title": "Details",
"description": "Review the certificate information before deciding to trust it.",
"content": {
"action": "Show content",
"title": "PEM Certificate"
}
}
},
"request": {
"title": "Request error",
"description": {
"connection": {
"hostUnreachable": "The server could not be reached. This usually means the host is offline or unreachable from your network.",
"networkUnreachable": "The network is unreachable. Please check your internet connection or network configuration.",
"refused": "The server refused the connection. It may not be running or is rejecting requests on the specified port.",
"reset": "The connection was unexpectedly closed by the server. This can happen if the server is unstable or restarted."
},
"dns": {
"notFound": "The server address could not be found. Please check the URL for typos or invalid domain names.",
"timeout": "DNS lookup timed out. This may be a temporary issue—please try again in a few moments.",
"noAnswer": "The DNS server didn't return a valid response. The domain may exist but has no valid records."
},
"timeout": {
"aborted": "The request was aborted before it could complete. This might be due to a user action or system timeout.",
"timeout": "The request took too long to complete and was timed out. Check your network or try again later."
}
}
}
},
"alertNotice": "The Save button is enabled once a successful connection is established",
"notification": {
"success": {
"title": "Connection successful",
"message": "The connection was successfully established"
},
"invalidUrl": {
"title": "Invalid URL",
"message": "The URL is invalid"
},
"secretNotDefined": {
"title": "Missing credentials",
"message": "Not all credentials were provided"
},
"invalidCredentials": {
"title": "Invalid credentials",
"message": "The credentials are invalid"
},
"commonError": {
"title": "Connection failed",
"message": "The connection could not be established"
},
"badRequest": {
"title": "Bad request",
"message": "The request was malformed"
},
"unauthorized": {
"title": "Unauthorized",
"message": "Probably wrong credentials"
},
"forbidden": {
"title": "Forbidden",
"message": "Probably missing permissions"
},
"notFound": {
"title": "Not found",
"message": "Probably wrong url or path"
},
"internalServerError": {
"title": "Internal server error",
"message": "The server encountered an error"
},
"serviceUnavailable": {
"title": "Service unavailable",
"message": "The server is currently unavailable"
},
"connectionAborted": {
"title": "Connection aborted",
"message": "The connection was aborted"
},
"domainNotFound": {
"title": "Domain not found",
"message": "The domain could not be found"
},
"connectionRefused": {
"title": "Connection refused",
"message": "The connection was refused"
},
"invalidJson": {
"title": "Invalid JSON",
"message": "The response was not valid JSON"
},
"wrongPath": {
"title": "Wrong path",
"message": "The path is probably not correct"
},
"tooManyRequests": {
"title": "Too many requests in a given time",
"message": "There were too many requests. You are likely being rate-limited or rejected by the target system"
}
}
},
"secrets": {
"title": "Secrets",
"lastUpdated": "Last updated {date}",
"notSet": {
"label": "No value set",
"tooltip": "This required secret has not been set yet"
},
"secureNotice": "This secret cannot be retrieved after creation",
"reset": {
"title": "Reset secret",
"message": "Are you sure you want to reset this secret?"
},
"noSecretsRequired": {
"segmentTitle": "No secrets",
"text": "No secrets required for this integration"
},
"kind": {
"username": {
"label": "Username",
"newLabel": "New username"
},
"apiKey": {
"label": "API Key",
"newLabel": "New API Key"
},
"password": {
"label": "Password",
"newLabel": "New password"
},
"tokenId": {
"label": "Token ID",
"newLabel": "New token ID"
},
"realm": {
"label": "Realm",
"newLabel": "New realm"
},
"personalAccessToken": {
"label": "Personal Access Token",
"newLabel": "New Personal Access Token"
},
"topic": {
"label": "Topic",
"newLabel": "New topic"
},
"url": {
"label": "Url",
"newLabel": "New url"
},
"opnsenseApiKey": {
"label": "API Key (Key)",
"newLabel": "New API Key (Key)"
},
"opnsenseApiSecret": {
"label": "API Key (Secret)",
"newLabel": "New API Key (Secret)"
},
"patchmonApiKey": {
"label": "API Key",
"newLabel": "New API Key"
},
"patchmonApiSecret": {
"label": "API Secret",
"newLabel": "New API Secret"
},
"githubAppId": {
"label": "App Id",
"newLabel": "New App Id"
},
"githubInstallationId": {
"label": "Installation Id",
"newLabel": "New Installation Id"
},
"privateKey": {
"label": "Private key",
"newLabel": "New private key"
},
"slug": {
"label": "Status page slug",
"newLabel": "New status page slug"
}
}
},
"permission": {
"use": "Select integrations in items",
"interact": "Interact with integrations",
"full": "Full integration access"
},
"audiobookshelf": {
"name": "Audiobookshelf",
"description": "Self-hosted audiobook and podcast server"
},
"navidrome": {
"name": "Navidrome",
"description": "Self-hosted music streaming server with Subsonic API compatibility"
},
"uptimeKuma": {
"name": "Uptime Kuma",
"description": "Self-hosted uptime monitoring with public status pages",
"secret": {
"slug": {
"description": "The slug of your public status page. Defaults to \"default\" if not set."
},
"apiKey": {
"description": "Optional API key for authenticated /metrics access"
}
}
},
"traefik": {
"name": "Traefik",
"description": "Cloud-native reverse proxy and load balancer"
},
"paperlessNgx": {
"name": "Paperless-ngx",
"description": "Document management system for archiving and organizing scanned documents"
},
"patchmon": {
"name": "PatchMon",
"description": "Patch management and monitoring for Linux hosts"
},
"bazarr": {
"name": "Bazarr",
"description": "Companion application to Sonarr and Radarr that manages and downloads subtitles"
}
},
"media": {
"plural": "Medias",
"search": "Find a media",
"field": {
"name": "Name",
"size": "Size",
"creator": "Creator"
},
"action": {
"upload": {
"label": "Upload media",
"file": "Select file",
"notification": {
"success": {
"message": "The media was successfully uploaded"
},
"error": {
"message": "The media could not be uploaded"
}
}
},
"delete": {
"label": "Delete media",
"description": "Are you sure you want to delete the media <bName></bName>?",
"notification": {
"success": {
"message": "The media was successfully deleted"
},
"error": {
"message": "The media could not be deleted"
}
}
},
"copy": {
"label": "Copy URL"
},
"open": {
"label": "Open media"
}
},
"noResults": {
"title": "No media uploaded"
}
},
"common": {
"success": "Success",
"beta": "Beta",
"error": "Error",
"action": {
"add": "Add",
"apply": "Apply",
"backToOverview": "Back to overview",
"skip": "Skip",
"change": "Change",
"create": "Create",
"createAnother": "Create and start over",
"edit": "Edit",
"import": "Import",
"insert": "Insert",
"remove": "Remove",
"save": "Save",
"saveChanges": "Save changes",
"cancel": "Cancel",
"delete": "Delete",
"discard": "Discard",
"close": "Close",
"confirm": "Confirm",
"continue": "Continue",
"previous": "Previous",
"next": "Next",
"checkoutDocs": "Check out the documentation",
"checkLogs": "Check logs for more details",
"tryAgain": "Try again",
"loading": "Loading",
"show": "Show",
"hide": "Hide"
},
"here": "here",
"iconPicker": {
"label": "Icon URL",
"header": "Type name or objects to filter for icons... Homarr will search through {countIcons} icons for you.",
"headerLoading": "Type to search icons…",
"noResults": "No icons match \"{search}\".",
"error": "Couldn't load icons."
},
"colorScheme": {
"options": {
"auto": "Auto",
"light": "Light",
"dark": "Dark"
}
},
"information": {
"min": "Min",
"max": "Max",
"days": "Days",
"hours": "Hours",
"minutes": "Minutes"
},
"notification": {
"create": {
"success": "Creation successful",
"error": "Creation failed"
},
"delete": {
"success": "Deletion successful",
"error": "Deletion failed"
},
"update": {
"success": "Changes applied successfully",
"error": "Unable to apply changes"
},
"transfer": {
"success": "Transfer successful",
"error": "Transfer failed"
}
},
"multiSelect": {
"placeholder": "Pick one or more values"
},
"multiText": {
"placeholder": "Add more values",
"addLabel": "Add {value}"
},
"select": {
"placeholder": "Pick value",
"badge": {
"recommended": "Recommended"
}
},
"userAvatar": {
"menu": {
"switchToDarkMode": "Switch to dark mode",
"switchToLightMode": "Switch to light mode",
"management": "Management",
"docker": "Docker",
"preferences": "Your preferences",
"logout": "Logout",
"login": "Login",
"homeBoard": "Your home board",
"loggedOut": "Logged out",
"updateAvailable": "{countUpdates} updates available: {tag}"
}
},
"dangerZone": "Danger zone",
"noResults": "No results found",
"unsavedChanges": "You have unsaved changes!",
"servers": "Servers",
"applications": "Apps",
"services": "Services",
"preview": {
"show": "Show preview",
"hide": "Hide preview"
},
"zod": {
"errors": {
"default": "This field is invalid",
"required": "This field is required",
"string": {
"startsWith": "This field must start with {startsWith}",
"endsWith": "This field must end with {endsWith}",
"includes": "This field must include {includes}",
"invalidEmail": "This field must be a valid email"
},
"tooSmall": {
"string": "This field must be at least {minimum} characters long",
"number": "This field must be greater than or equal to {minimum}"
},
"tooBig": {
"string": "This field must be at most {maximum} characters long",
"number": "This field must be less than or equal to {maximum}"
},
"custom": {
"passwordsDoNotMatch": "Passwords do not match",
"passwordRequirements": "Password does not meet the requirements",
"boardAlreadyExists": "A board with this name already exists",
"invalidFileType": "Invalid file type, expected {expected}",
"invalidFileName": "Invalid file name",
"fileTooLarge": "File is too large, maximum size is {maxSize}",
"invalidConfiguration": "Invalid configuration",
"groupNameTaken": "Group name already taken"
}
}
},
"unit": {
"speed": {
"kilometersPerHour": "km/h",
"milesPerHour": "mph"
}
}
},
"section": {
"dynamic": {
"action": {
"create": "New dynamic section",
"remove": "Remove dynamic section"
},
"option": {
"title": {
"label": "Title"
},
"customCssClasses": {
"label": "Custom css classes"
},
"borderColor": {
"label": "Border color"
}
},
"remove": {
"title": "Remove dynamic section",
"message": "Are you sure you want to remove this dynamic section? Items will be moved at the same location in the parent section."
}
},
"category": {
"field": {
"name": {
"label": "Name"
}
},
"action": {
"create": "New category",
"edit": "Rename category",
"remove": "Remove category",
"moveUp": "Move up",
"moveDown": "Move down",
"createAbove": "New category above",
"createBelow": "New category below",
"openAllInNewTabs": "Open all in tabs"
},
"create": {
"title": "New category",
"submit": "Add category"
},
"remove": {
"title": "Remove category",
"message": "Are you sure you want to remove the category {name}?"
},
"edit": {
"title": "Rename category",
"submit": "Rename category"
},
"menu": {
"label": {
"create": "New category",
"changePosition": "Change position",
"settings": "Settings"
}
},
"openAllInNewTabs": {
"title": "Open all in tabs",
"text": "Some browsers may block the bulk-opening of tabs for security reasons. Homarr was unable to open all windows, because your browser blocked this action. Please allow \"Open pop-up windows\" and re-try."
}
}
},
"item": {
"action": {
"create": "New item",
"import": "Import item",
"edit": "Edit item",
"moveResize": "Move / resize item",
"duplicate": "Duplicate item",
"remove": "Remove item"
},
"menu": {
"label": {
"settings": "Settings",
"refresh": "Refresh",
"options": "Options",
"actions": "Actions"
},
"status": {
"success": "OK",
"error": "Error",
"loading": "Loading",
"idle": "Idle"
}
},
"create": {
"title": "Choose item to add",
"search": "Filter items",
"addToBoard": "Add to board"
},
"moveResize": {
"title": "Move / resize item",
"field": {
"width": {
"label": "Width"
},
"height": {
"label": "Height"
},
"xOffset": {
"label": "X offset"
},
"yOffset": {
"label": "Y offset"
}
}
},
"edit": {
"title": "Edit item",
"tab": {
"widget": "Edit widget",
"app": "Edit app"
},
"app": {
"propagationNotice": "Changes to this app will be applied everywhere it is used across all dashboards."
},
"advancedOptions": {
"label": "Advanced options",
"title": "Advanced item options"
},
"field": {
"integrations": {
"label": "Integrations"
},
"title": {
"label": "Title"
},
"customCssClasses": {
"label": "Custom css classes"
},
"borderColor": {
"label": "Border color"
}
}
},
"remove": {
"title": "Remove item",
"message": "Are you sure you want to remove this item?"
}
},
"widget": {
"integrationSelect": {
"configureIntegrationFirst": "Connect an integration first",
"loading": "Loading...",
"placeholder": "Select an option",
"noResults": "No results found",
"loadError": "Failed to load options"
},
"app": {
"name": "App",
"description": "Embeds an app into the board.",
"option": {
"appId": {
"label": "Choose app"
},
"openInNewTab": {
"label": "Open in new tab"
},
"showTitle": {
"label": "Show app name"
},
"pingEnabled": {
"label": "Enable status check"
},
"layout": {
"label": "Layout",
"option": {
"row": "Horizontal",
"row-reverse": "Horizontal (reversed)",
"column": "Vertical",
"column-reverse": "Vertical (reversed)"
}
},
"descriptionDisplayMode": {
"label": "Description display mode",
"description": "Choose how to display the app description",
"option": {
"normal": "Within widget",
"tooltip": "As tooltip",
"hidden": "Hidden"
}
}
},
"error": {
"notFound": {
"label": "No app",
"tooltip": "You have no valid app selected"
}
}
},
"bookmarks": {
"name": "Bookmarks",
"description": "Displays multiple app links",
"option": {
"title": {
"label": "Title"
},
"layout": {
"label": "Layout",
"option": {
"row": {
"label": "Horizontal"
},
"column": {
"label": "Vertical"
},
"grid": {
"label": "Grid"
},
"gridHorizontal": {
"label": "Grid horizontal"
}
}
},
"hideTitle": {
"label": "Hide title"
},
"hideIcon": {
"label": "Hide icons"
},
"hideHostname": {
"label": "Hide hostnames"
},
"openNewTab": {
"label": "Open in new tab"
},
"withBorder": {
"label": "Show border"
},
"items": {
"label": "Bookmarks",
"add": "Add bookmark"
}
}
},
"archiveTeamWarrior": {
"name": "ArchiveTeam Warrior",
"description": "Monitor ArchiveTeam Warrior status, projects, and active archival jobs.",
"option": {
"showBroadcastMessage": {
"label": "Show broadcast messages"
}
}
},
"dnsHoleSummary": {
"name": "DNS Hole Summary",
"description": "Displays the summary of your DNS Hole",
"option": {
"layout": {
"label": "Layout",
"option": {
"row": {
"label": "Horizontal"
},
"column": {
"label": "Vertical"
},
"grid": {
"label": "Grid"
}
}
},
"usePiHoleColors": {
"label": "Use Pi-Hole colors"
}
},
"error": {
"internalServerError": "Failed to fetch DNS Hole Summary",
"integrationsDisconnected": "No data available, all integrations disconnected"
},
"data": {
"adsBlockedToday": "Blocked today",
"adsBlockedTodayPercentage": "Blocked today",
"dnsQueriesToday": "Queries today",
"domainsBeingBlocked": "Domains on blocklist"
},
"domainsTooltip": "Due to multiple integrations Homarr can't calculate the exact number of domains being blocked"
},
"dnsHoleControls": {
"name": "DNS Hole Controls",
"description": "Control PiHole or AdGuard from your dashboard",
"option": {
"layout": {
"label": "Layout",
"option": {
"row": {
"label": "Horizontal"
},
"column": {
"label": "Vertical"
},
"grid": {
"label": "Grid"
}
}
},
"showToggleAllButtons": {
"label": "Show Toggle All Buttons"
}
},
"error": {
"internalServerError": "Failed to control DNS Hole"
},
"controls": {
"enableAll": "Enable All",
"disableAll": "Disable All",
"setTimer": "Set Timer",
"set": "Set",
"enabled": "Enabled",
"disabled": "Disabled",
"processing": "Processing",
"disconnected": "Disconnected",
"hours": "Hours",
"minutes": "Minutes",
"unlimited": "Leave blank to unlimited"
}
},
"clock": {
"name": "Date and time",
"description": "Displays the current date and time.",
"option": {
"customTitleToggle": {
"label": "Custom Title/City display",
"description": "Show off a custom title or the name of the city/country on top of the clock."
},
"customTitle": {
"label": "Title"
},
"is24HourFormat": {
"label": "24-hour format",
"description": "Use 24-hour format instead of 12-hour format"
},
"showSeconds": {
"label": "Display seconds"
},
"useCustomTimezone": {
"label": "Use a fixed timezone"
},
"timezone": {
"label": "Timezone",
"description": "Choose the timezone following the IANA standard"
},
"showDate": {
"label": "Show the date"
},
"dateFormat": {
"label": "Date Format",
"description": "How the date should look like"
},
"customTimeFormat": {
"label": "Custom time format",
"description": "Use ISO 8601 to format time (this will override other options)"
},
"customDateFormat": {
"label": "Custom date format",
"description": "Use ISO 8601 to format date (this will override other options)"
}
}
},
"minecraftServerStatus": {
"name": "Minecraft Server Status",
"description": "Displays the status of a Minecraft server",
"option": {
"title": {
"label": "Title"
},
"domain": {
"label": "Server address"
},
"isBedrockServer": {
"label": "Bedrock server"
}
},
"status": {
"online": "Online",
"offline": "Offline"
}
},
"timetable": {
"name": "Timetable",
"description": "Displays departure times for a station",
"title": "Departures {station}",
"noStation": "No station selected",
"option": {
"baseUrl": {
"label": "Search.ch URL"
},
"station": {
"label": "Station"
}
}
},
"notebook": {
"name": "Notebook",
"description": "A simple notebook widget that supports markdown",
"option": {
"showToolbar": {
"label": "Show the toolbar to help you write markdown"
},
"allowReadOnlyCheck": {
"label": "Allow check in read only mode"
},
"content": {
"label": "The content of the notebook"
}
},
"controls": {
"bold": "Bold",
"italic": "Italic",
"strikethrough": "Strikethrough",
"underline": "Underline",
"colorText": "Color text",
"colorHighlight": "Colored highlight text",
"code": "Code",
"clear": "Clear formatting",
"heading": "Heading {level}",
"align": "Align text: {position}",
"directionLtr": "Set text direction left to right",
"directionRtl": "Set text direction right to left",
"blockquote": "Blockquote",
"horizontalLine": "Horizontal line",
"bulletList": "Bullet list",
"orderedList": "Ordered list",
"checkList": "Check list",
"increaseIndent": "Increase Indent",
"decreaseIndent": "Decrease Indent",
"link": "Link",
"unlink": "Remove link",
"image": "Embed Image",
"addTable": "Add table",
"deleteTable": "Delete Table",
"colorCell": "Color Cell",
"mergeCell": "Toggle cell merging",
"addColumnLeft": "Add column before",
"addColumnRight": "Add column after",
"deleteColumn": "Delete column",
"addRowTop": "Add row before",
"addRowBelow": "Add row after",
"deleteRow": "Delete row"
},
"align": {
"left": "Left",
"center": "Center",
"right": "Right"
},
"popover": {
"clearColor": "Clear color",
"source": "Source",
"widthPlaceholder": "Value in % or pixels",
"columns": "Columns",
"rows": "Rows",
"width": "Width",
"height": "Height"
},
"placeholder": "Start writing your notes",
"dismiss": {
"title": "Dismiss changes?",
"message": "You have unsaved changes in your notebook. Are you sure you want to discard them?",
"action": {
"discard": "Discard changes",
"keepEditing": "Keep editing"
}
}
},
"anchorNote": {
"name": "Anchor Note",
"description": "Displays a selected note from Anchor",
"option": {
"noteId": {
"label": "Note"
},
"showTitle": {
"label": "Show title"
},
"showUpdatedAt": {
"label": "Show last updated"
}
},
"empty": "Select a note to display",
"emptyContent": "This note has no content",
"notFound": "Note not found",
"noNotes": "No notes found",
"integrationRequired": "Select an Anchor integration first",
"updatedAt": "Updated {date}",
"untitled": "Untitled",
"edit": "Edit",
"save": "Save",
"cancel": "Cancel",
"readOnlyViewer": "You have viewer access to this note. Editing is disabled.",
"saveForbidden": "You do not have permission to edit this note.",
"saveFailed": "Failed to save this note. Please try again."
},
"iframe": {
"name": "iFrame",
"description": "Embed any content from the internet. Some websites may restrict access.",
"option": {
"embedUrl": {
"label": "Embed URL"
},
"allowFullScreen": {
"label": "Allow full screen"
},
"allowTransparency": {
"label": "Allow transparency"
},
"allowScrolling": {
"label": "Allow scrolling"
},
"allowPayment": {
"label": "Allow payment"
},
"allowAutoPlay": {
"label": "Allow auto play"
},
"allowMicrophone": {
"label": "Allow microphone"
},
"allowCamera": {
"label": "Allow camera"
},
"allowGeolocation": {
"label": "Allow geolocation"
},
"allowModals": {
"label": "Allow modals"
}
},
"error": {
"noUrl": "No iFrame URL provided",
"unsupportedProtocol": "The URL provided is using an unsupported protocol. Please use one of ({supportedProtocols})",
"noBrowerSupport": "Your Browser does not support iframes. Please update your browser."
}
},
"smartHome-entityState": {
"name": "Entity State",
"description": "Display the state of an entity and toggle it optionally",
"option": {
"entityId": {
"label": "Entity ID"
},
"displayName": {
"label": "Display-name"
},
"entityUnit": {
"label": "Entity Unit"
},
"clickable": {
"label": "Clickable"
}
}
},
"smartHome-executeAutomation": {
"name": "Execute Automation",
"description": "Trigger an automation with one click",
"option": {
"displayName": {
"label": "Display name"
},
"automationId": {
"label": "Automation ID"
}
},
"spotlightAction": {
"run": "Run {name}"
}
},
"stockPrice": {
"name": "Stock Price",
"description": "Displays the current stock price of a company",
"option": {
"stock": {
"label": "Stock symbol"
},
"timeRange": {
"label": "Time Range",
"option": {
"1d": {
"label": "1 Day"
},
"5d": {
"label": "5 Day"
},
"1mo": {
"label": "1 Month"
},
"3mo": {
"label": "3 Months"
},
"6mo": {
"label": "6 Months"
},
"ytd": {
"label": "Year to Date"
},
"1y": {
"label": "1 Year"
},
"2y": {
"label": "2 Years"
},
"5y": {
"label": "5 Years"
},
"10y": {
"label": "10 Years"
},
"max": {
"label": "Max"
}
}
},
"timeInterval": {
"label": "Time Interval",
"option": {
"5m": {
"label": "5 Minutes"
},
"15m": {
"label": "15 Minutes"
},
"30m": {
"label": "30 Minutes"
},
"1h": {
"label": "1 Hour"
},
"1d": {
"label": "1 Day"
},
"5d": {
"label": "5 Days"
},
"1wk": {
"label": "1 Week"
},
"1mo": {
"label": "1 Month"
}
}
}
}
},
"calendar": {
"name": "Calendar",
"description": "Display events from your integrations in a calendar view within a certain relative time period",
"duration": {
"allDay": "All day"
},
"option": {
"releaseType": {
"label": "Radarr release type",
"options": {
"inCinemas": "In cinemas",
"digitalRelease": "Digital release",
"physicalRelease": "Physical release"
}
},
"filterPastMonths": {
"label": "Start from"
},
"filterFutureMonths": {
"label": "End at"
},
"showUnmonitored": {
"label": "Show unmonitored"
}
}
},
"weather": {
"name": "Weather",
"description": "Displays the current weather information of a set location.",
"option": {
"isFormatFahrenheit": {
"label": "Temperature in Fahrenheit"
},
"disableTemperatureDecimals": {
"label": "Disable temperature decimals"
},
"showCurrentWindSpeed": {
"label": "Show current wind speed",
"description": "Only on current weather"
},
"useImperialSpeed": {
"label": "Use mph for windspeed"
},
"location": {
"label": "Weather location"
},
"showCity": {
"label": "Show city"
},
"hasForecast": {
"label": "Show forecast"
},
"forecastDayCount": {
"label": "Amount of forecast days",
"description": "When the widget is not wide enough, less days are shown"
},
"dateFormat": {
"label": "Date Format",
"description": "How the date should look like"
}
},
"currentWindSpeed": "{currentWindSpeed} {unit}",
"dailyForecast": {
"sunrise": "Sunrise",
"sunset": "Sunset",
"maxWindSpeed": "Max wind speed: {maxWindSpeed} {unit}",
"maxWindGusts": "Max wind gusts: {maxWindGusts} {unit}",
"humidity": "Humidity: {humidity}%"
},
"kind": {
"clear": "Clear",
"mainlyClear": "Mainly clear",
"fog": "Fog",
"drizzle": "Drizzle",
"freezingDrizzle": "Freezing drizzle",
"rain": "Rain",
"freezingRain": "Freezing rain",
"snowFall": "Snow fall",
"snowGrains": "Snow grains",
"rainShowers": "Rain showers",
"snowShowers": "Snow showers",
"thunderstorm": "Thunderstorm",
"thunderstormWithHail": "Thunderstorm with hail",
"unknown": "Unknown"
}
},
"indexerManager": {
"name": "Indexer manager status",
"description": "Status of your indexers",
"option": {
"openIndexerSiteInNewTab": {
"label": "Open indexer site in new tab"
}
},
"title": "Indexer manager",
"testAll": "Test all",
"error": {
"internalServerError": "Failed to fetch indexers status"
}
},
"healthMonitoring": {
"name": "System Health Monitoring",
"description": "Displays information showing the health and status of your system(s).",
"tab": {
"system": "System",
"cluster": "Cluster"
},
"option": {
"fahrenheit": {
"label": "CPU Temp in Fahrenheit"
},
"cpu": {
"label": "Show CPU Info"
},
"memory": {
"label": "Show Memory Info"
},
"gpu": {
"label": "Show GPU Info"
},
"showUptime": {
"label": "Show Uptime"
},
"fileSystem": {
"label": "Show Filesystem Info"
},
"visibleStorageVolumes": {
"label": "Visible storage volumes",
"description": "Only available when all selected integrations are Synology. Leave empty to show all detected storage volumes.",
"placeholder": "Select storage volumes"
},
"defaultTab": {
"label": "Default tab"
},
"visibleClusterSections": {
"label": "Visible cluster sections"
},
"sectionIndicatorRequirement": {
"label": "Section indicator requirement"
}
},
"popover": {
"information": "Information",
"processor": "Processor: {cpuModelName}",
"memory": "Memory: {memory}GiB",
"memoryAvailable": "Available: {memoryAvailable}GiB ({percent}%)",
"version": "Version: {version}",
"uptime": "Uptime: {months} Months, {days} Days, {hours} Hours, {minutes} Minutes",
"loadAverage": "Load average:",
"minute": "1 minute",
"minutes": "{count} minutes",
"used": "Used",
"available": "Available",
"lastSeen": "Last status update: {lastSeen}"
},
"memory": {},
"error": {
"internalServerError": "Failed to fetch health status"
},
"cluster": {
"summary": {
"cpu": "CPU",
"memory": "RAM"
},
"resource": {
"node": {
"name": "Nodes"
},
"qemu": {
"name": "VMs"
},
"lxc": {
"name": "LXCs"
},
"storage": {
"name": "Storage"
}
},
"popover": {
"rightSection": {
"node": "Node",
"vmId": "VM ID",
"plugin": "Plugin"
},
"detail": {
"cpu": "Cores",
"memory": "Memory",
"storage": "Storage",
"uptime": "Uptime",
"haState": "HA State",
"storageType": {
"local": "Local storage",
"shared": "Shared storage"
}
}
},
"table": {
"header": {
"name": "Name",
"cpu": "CPU",
"memory": "RAM",
"node": "Node"
}
}
}
},
"dockerContainers": {
"name": "Docker stats",
"description": "Stats of your containers (This widget can only be added with administrator privileges)",
"option": {
"columns": {
"label": "Columns to show"
},
"enableRowSorting": {
"label": "Enable items sorting"
},
"defaultSort": {
"label": "Column used for sorting by default",
"option": {
"name": "Name",
"state": "State",
"cpuUsage": "CPU usage",
"memoryUsage": "Memory usage"
}
},
"descendingDefaultSort": {
"label": "Invert sorting"
}
},
"error": {
"internalServerError": "Failed to fetch containers stats"
}
},
"coolify": {
"name": "Coolify",
"description": "Overview of your Coolify instance with servers and applications",
"option": {
"showServers": {
"label": "Show servers"
},
"showApplications": {
"label": "Show applications"
},
"showServices": {
"label": "Show services"
}
},
"empty": {
"servers": "No servers found",
"applications": "No applications found",
"services": "No services found"
},
"footer": {
"updated": "Updated {when}"
},
"error": {
"noIntegration": "No Coolify integration configured",
"internalServerError": "Failed to fetch Coolify data"
},
"server": {
"buildServer": "Build"
},
"instances": {
"title": "Instances"
}
},
"vpn": {
"name": "VPN",
"description": "Overview of your VPN connections",
"serviceUnavailable": "VPN unavailable",
"option": {}
},
"ups": {
"name": "UPS",
"description": "Monitor the status of your UPS devices through a NUT server",
"option": {
"showBattery": {
"label": "Show battery"
},
"showLoad": {
"label": "Show load"
},
"showVoltage": {
"label": "Show voltage"
}
},
"status": {
"online": "Online",
"onBattery": "On battery",
"lowBattery": "Low battery",
"charging": "Charging",
"unknown": "Unknown"
},
"field": {
"runtime": "Runtime",
"load": "Load",
"input": "Input",
"output": "Output"
},
"error": {
"internalServerError": "Failed to fetch UPS data"
}
},
"tracearr": {
"name": "Tracearr",
"description": "Enhanced media server monitoring with detailed stream and transcoding data",
"option": {
"showStreams": {
"label": "Show active streams"
},
"showStats": {
"label": "Show stats summary"
},
"showRecentActivity": {
"label": "Show recent activity"
},
"showViolations": {
"label": "Show violations"
}
},
"stats": {
"activeStreams": "Active Streams",
"totalUsers": "Total Users",
"transcodes": "Transcodes",
"bandwidth": "Bandwidth"
},
"streams": {
"empty": "No active streams",
"user": "User",
"media": "Media",
"state": "State",
"quality": "Quality",
"device": "Device",
"progress": "Progress",
"videoDecision": {
"directPlay": "Direct Play",
"transcode": "Transcode",
"directStream": "Direct Stream"
}
},
"recentActivity": {
"title": "Recent Activity",
"empty": "No recent activity",
"watched": "Watched",
"partial": "Partial"
},
"violations": {
"title": "Violations",
"empty": "No recent violations",
"rule": "Rule",
"user": "User"
},
"noSectionsEnabled": "No sections enabled",
"error": {
"noIntegration": "No Tracearr integration configured",
"internalServerError": "Failed to fetch Tracearr data"
}
},
"umami": {
"name": "Umami Analytics",
"description": "Display visitor stats from your Umami analytics instance",
"visitors": "visitors",
"active": "active",
"pageviews": "pageviews",
"visits": "visits",
"bounceRate": "bounce",
"avgDuration": "avg",
"option": {
"websiteId": {
"label": "Website",
"description": "Select a website tracked by your Umami instance",
"placeholder": "Select a website",
"loading": "Loading websites...",
"noWebsites": "No websites found",
"configureIntegrationFirst": "Connect a Umami integration first"
},
"timeFrame": {
"label": "Time frame",
"description": "The time period to display visitor data for",
"option": {
"today": "Today",
"24h": "Last 24 hours",
"7d": "Last 7 days",
"30d": "Last 30 days",
"month": "This month",
"lastMonth": "Last month"
}
},
"eventName": {
"label": "Event",
"description": "Show total occurrences of a specific event",
"placeholder": "Select an event",
"loading": "Loading events...",
"noEvents": "No events found",
"none": "No event",
"configureWebsiteFirst": "Select a website first to load events"
},
"chartType": {
"label": "Chart type",
"description": "Display style for the chart",
"option": {
"bar": "Bar chart",
"sparkline": "Sparkline"
}
},
"chartStyle": {
"label": "Chart style",
"description": "How to display the event series in the chart",
"option": {
"grouped": "Side by side",
"overlay": "Overlay (subset)"
}
},
"viewMode": {
"label": "View",
"description": "What to display in the widget body",
"option": {
"chart": "Chart",
"events": "Events chart",
"topPages": "Top pages",
"topReferrers": "Top referrers"
}
},
"eventNames": {
"label": "Events",
"description": "Select one or more events to chart",
"placeholder": "Select events...",
"loading": "Loading events...",
"noEvents": "No events found",
"configureWebsiteFirst": "Select a website first to load events"
},
"topCount": {
"label": "Items to show",
"description": "Number of top items to display (max 500)"
}
},
"event": {
"occurrences": "events",
"label": "events"
},
"topPages": {
"direct": "Direct"
},
"topReferrers": {
"direct": "Direct"
},
"events": {
"selectPrompt": "Select events to chart"
},
"error": {
"noIntegration": "No Umami integration configured",
"noWebsite": "No website configured",
"noData": "No data available",
"internalServerError": "Failed to fetch Umami data"
}
},
"common": {
"location": {
"query": "City / Postal code",
"latitude": "Latitude",
"longitude": "Longitude",
"disabledTooltip": "Please enter a city or postal code",
"unknownLocation": "Unknown location",
"search": "Search",
"table": {
"header": {
"city": "City",
"country": "Country",
"coordinates": "Coordinates",
"population": "Population"
},
"action": {
"select": "Select {city}, {countryCode}"
},
"population": {
"fallback": "Unknown"
}
}
},
"integration": {
"noData": "No integration found",
"description": "Click <here></here> to create a new integration"
},
"app": {
"noData": "No app found",
"description": "Click <here></here> to create a new app",
"quickCreate": "Create app on the fly"
},
"error": {
"noIntegration": "No integration selected",
"noData": "No integration data available"
},
"option": {}
},
"video": {
"name": "Video Stream",
"description": "Embed a video stream or video from a camera or a website",
"option": {
"feedUrl": {
"label": "Feed URL"
},
"hasAutoPlay": {
"label": "Autoplay",
"description": "Autoplay only works when muted because of browser restrictions"
},
"isMuted": {
"label": "Muted"
},
"hasControls": {
"label": "Show controls"
}
},
"error": {
"noUrl": "No Video URL provided",
"forYoutubeUseIframe": "For YouTube videos use the iframe option"
}
},
"mediaServer": {
"name": "Current media server streams",
"description": "Show the current streams on your media servers",
"option": {
"showOnlyPlaying": {
"label": "Show only currently playing",
"description": "Disabling this will not work for plex"
}
},
"items": {
"currentlyPlaying": "Currently playing",
"user": "User",
"name": "Name",
"id": "Id",
"status": "Status",
"directPlay": "Direct play",
"transcoding": "Transcoding",
"paused": "Paused",
"remaining": "{minutes} min left",
"metadata": {
"title": "Stats for nerds",
"video": {
"title": "Video",
"resolution": "Resolution"
},
"audio": {
"title": "Audio",
"channelCount": "Audio channels",
"codec": "Audio codec"
},
"transcoding": {
"title": "Transcoding",
"container": "Container",
"resolution": "Resolution",
"target": "Target codec"
}
}
}
},
"paperlessNgx": {
"name": "Paperless-ngx",
"description": "Overview of your Paperless-ngx document archive",
"documentsTotal": "Total Documents",
"documentsInbox": "Inbox",
"correspondents": "Correspondents",
"tags": "Tags",
"documentTypes": "Document Types",
"inboxRatio": "Inbox Ratio",
"inbox": "inbox",
"total": "total",
"option": {
"showInboxRatio": {
"label": "Show inbox ratio",
"description": "Display the inbox-to-total document ratio in the hero section"
},
"showInboxRing": {
"label": "Show inbox ring",
"description": "Display a progress ring alongside the inbox ratio"
},
"showDocumentsTotal": {
"label": "Show total documents",
"description": "Show the total number of documents in your archive"
},
"showDocumentsInbox": {
"label": "Show inbox count",
"description": "Show the number of unprocessed documents in the inbox"
},
"showCorrespondents": {
"label": "Show correspondents",
"description": "Show the total number of correspondents"
},
"showTags": {
"label": "Show tags",
"description": "Show the total number of tags"
},
"showDocumentTypes": {
"label": "Show document types",
"description": "Show the total number of document types"
}
},
"error": {
"internalServerError": "Failed to fetch Paperless-ngx data"
}
},
"patchmon": {
"name": "PatchMon",
"description": "Overview of host patch status from PatchMon",
"title": "PatchMon Statistics",
"totalHosts": "Total Hosts",
"hostsNeedingUpdates": "Needs Updates",
"securityUpdates": "Security Updates",
"upToDateHosts": "Up-to-Date Hosts",
"hostsWithSecurityUpdates": "Hosts with Security Updates",
"recentUpdates24h": "Updates (24h)",
"totalOutdatedPackages": "Outdated Packages",
"totalRepos": "Repositories",
"osDistribution": "OS Distribution",
"compliance": "Patch Compliance",
"complianceRatio": "{upToDate} / {total}",
"lastUpdated": "Updated {time}",
"option": {
"showTotalHosts": {
"label": "Show total hosts",
"description": "Display the total number of monitored hosts"
},
"showHostsNeedingUpdates": {
"label": "Show hosts needing updates",
"description": "Display hosts with at least one outdated package"
},
"showSecurityUpdates": {
"label": "Show security updates",
"description": "Display the total number of security updates available"
},
"showUpToDateHosts": {
"label": "Show up-to-date hosts",
"description": "Display hosts with zero outdated packages"
},
"showHostsWithSecurityUpdates": {
"label": "Show hosts with security updates",
"description": "Display hosts requiring security patches"
},
"showRecentUpdates24h": {
"label": "Show recent updates (24h)",
"description": "Display the number of updates applied in the last 24 hours"
},
"showTotalOutdatedPackages": {
"label": "Show outdated packages",
"description": "Display the total number of outdated packages across all hosts"
},
"showTotalRepos": {
"label": "Show repositories",
"description": "Display the number of active repositories being monitored"
},
"enableThresholdColors": {
"label": "Enable threshold colors",
"description": "Color stat values green, yellow, or red based on severity presets"
},
"useCustomThresholds": {
"label": "Advanced thresholds",
"description": "Customize warning and critical thresholds per stat using absolute counts or percentages of total hosts"
},
"thresholdMode": {
"option": {
"absolute": "Absolute count",
"percent": "Percent of total hosts"
}
},
"hostsNeedingUpdatesThresholdMode": {
"label": "Needs updates threshold mode",
"description": "Compare the needs-updates count as an absolute value or percentage of total hosts"
},
"hostsNeedingUpdatesWarningAt": {
"label": "Needs updates warning threshold",
"description": "Enter yellow when the value reaches this threshold"
},
"hostsNeedingUpdatesCriticalAt": {
"label": "Needs updates critical threshold",
"description": "Enter red when the value reaches this threshold"
},
"securityUpdatesThresholdMode": {
"label": "Security updates threshold mode",
"description": "Compare the security-updates count as an absolute value or percentage of total hosts"
},
"securityUpdatesWarningAt": {
"label": "Security updates warning threshold",
"description": "Enter yellow when the value reaches this threshold"
},
"securityUpdatesCriticalAt": {
"label": "Security updates critical threshold",
"description": "Enter red when the value reaches this threshold"
},
"hostsWithSecurityUpdatesThresholdMode": {
"label": "Hosts with security updates threshold mode",
"description": "Compare the host count as an absolute value or percentage of total hosts"
},
"hostsWithSecurityUpdatesWarningAt": {
"label": "Hosts with security updates warning threshold",
"description": "Enter yellow when the value reaches this threshold"
},
"hostsWithSecurityUpdatesCriticalAt": {
"label": "Hosts with security updates critical threshold",
"description": "Enter red when the value reaches this threshold"
},
"upToDateHostsThresholdMode": {
"label": "Up-to-date hosts threshold mode",
"description": "Compare the up-to-date host count as an absolute value or percentage of total hosts"
},
"upToDateHostsWarningAt": {
"label": "Up-to-date hosts warning threshold",
"description": "Enter yellow when the value is at or above this threshold but below full coverage"
},
"upToDateHostsCriticalAt": {
"label": "Up-to-date hosts critical threshold",
"description": "Enter red when the value falls below this threshold"
},
"totalOutdatedPackagesThresholdMode": {
"label": "Outdated packages threshold mode",
"description": "Compare the outdated-packages count as an absolute value or percentage of total hosts"
},
"totalOutdatedPackagesWarningAt": {
"label": "Outdated packages warning threshold",
"description": "Enter yellow when the value reaches this threshold"
},
"totalOutdatedPackagesCriticalAt": {
"label": "Outdated packages critical threshold",
"description": "Enter red when the value reaches this threshold"
},
"showOsDistribution": {
"label": "Show OS distribution",
"description": "Display a breakdown of monitored hosts by operating system"
},
"osDistributionLimit": {
"label": "OS distribution limit",
"description": "Maximum number of operating systems to display",
"option": {
"3": "Top 3",
"5": "Top 5",
"10": "Top 10",
"all": "All"
}
},
"showOsVersion": {
"label": "Show OS version",
"description": "Append the OS version to each distribution label when available"
},
"showComplianceHero": {
"label": "Show compliance hero",
"description": "Display a compliance ring showing the percentage of up-to-date hosts"
},
"osDisplayMode": {
"label": "OS display mode",
"description": "Choose how to display the operating system distribution",
"option": {
"bars": "Horizontal bars",
"donut": "Donut chart"
}
}
},
"error": {
"internalServerError": "Failed to fetch PatchMon data"
}
},
"bazarr": {
"name": "Bazarr",
"description": "Overview of missing subtitles and health status from your Bazarr instance",
"episodes": "Missing Episodes",
"movies": "Missing Movies",
"providers": "Provider Issues",
"status": "Health Issues",
"option": {
"showMissingEpisodes": {
"label": "Show missing episodes",
"description": "Display the number of episodes with missing subtitles"
},
"showMissingMovies": {
"label": "Show missing movies",
"description": "Display the number of movies with missing subtitles"
},
"showProviderIssues": {
"label": "Show provider issues",
"description": "Display the number of subtitle providers with issues"
},
"showHealthIssues": {
"label": "Show health issues",
"description": "Display the number of Bazarr health issues"
}
},
"error": {
"internalServerError": "Failed to fetch Bazarr data"
}
},
"immich-serverStats": {
"name": "Immich Server Stats",
"description": "Information about your Immich instance",
"option": {
"showUsers": {
"label": "Show users",
"description": "Show count of users on your instance"
},
"showPhotos": {
"label": "Show photos",
"description": "Show count of photos on your instance"
},
"showVideos": {
"label": "Show videos",
"description": "Show count of videos on your instance"
},
"showStorage": {
"label": "Show storage",
"description": "Show the total amount of storage used"
}
},
"users": "Users",
"photos": "Photos",
"videos": "Videos",
"storage": "Used Storage"
},
"immich-albumCarousel": {
"name": "Immich Album",
"option": {
"albumId": {
"label": "Album",
"description": "Select the Immich album to show in the slideshow."
},
"rotationIntervalSeconds": {
"label": "Interval in seconds",
"description": "Rotate between pictures in the album every X seconds. Must be at least 1. Must be below 3600."
},
"showPhotoInfo": {
"label": "Show photo info",
"description": "Display date of the picture and the current index at the bottom of the slideshow"
},
"randomizePhotos": {
"label": "Randomize photos",
"description": "Show photos in a random order instead of always starting with the same album order."
}
},
"description": "Slideshow of pictures in your Immich album",
"noAlbumSelected": "No album selected, edit widget and choose an album",
"noPhotos": "No photos in this album"
},
"downloads": {
"name": "Download Client",
"description": "Allows you to view and manage your Downloads from both Torrent and Usenet clients.",
"option": {
"columns": {
"label": "Columns to show"
},
"enableRowSorting": {
"label": "Enable items sorting"
},
"defaultSort": {
"label": "Column used for sorting by default"
},
"descendingDefaultSort": {
"label": "Invert sorting"
},
"showCompletedUsenet": {
"label": "Show usenet entries marked as completed"
},
"showCompletedTorrent": {
"label": "Show torrent entries marked as completed"
},
"showCompletedHttp": {
"label": "Show Miscellaneous entries marked as completed"
},
"activeTorrentThreshold": {
"label": "Hide completed torrent under this threshold (in kiB/s)"
},
"categoryFilter": {
"label": "Categories/labels to filter"
},
"filterIsWhitelist": {
"label": "Filter as a whitelist"
},
"applyFilterToRatio": {
"label": "Use filter to calculate Ratio"
},
"limitPerIntegration": {
"label": "Limit items per integration",
"description": "This will limit the number of items shown per integration, not globally"
}
},
"errors": {
"noColumns": "Select Columns in Items",
"noCommunications": "Can't load data from integration"
},
"items": {
"actions": {
"columnTitle": "Controls"
},
"added": {
"columnTitle": "Added",
"detailsTitle": "Date Added"
},
"category": {
"columnTitle": "Extras",
"detailsTitle": "Categories (Or extra information)"
},
"downSpeed": {
"columnTitle": "Down",
"detailsTitle": "Download Speed"
},
"index": {
"columnTitle": "#",
"detailsTitle": "Current index within client"
},
"id": {
"columnTitle": "Id"
},
"integration": {
"columnTitle": "Integration"
},
"name": {
"columnTitle": "Job name"
},
"progress": {
"columnTitle": "Progress",
"detailsTitle": "Download Progress"
},
"ratio": {
"columnTitle": "Ratio",
"detailsTitle": "Torrent ratio (received/sent)"
},
"received": {
"columnTitle": "Total down",
"detailsTitle": "Total downloaded"
},
"sent": {
"columnTitle": "Total up",
"detailsTitle": "Total Uploaded"
},
"size": {
"columnTitle": "File Size",
"detailsTitle": "Total Size of selection/files"
},
"state": {
"columnTitle": "State",
"detailsTitle": "Job State"
},
"time": {
"columnTitle": "Finish time",
"detailsTitle": "Time since/to completion"
},
"type": {
"columnTitle": "Type",
"detailsTitle": "Download Client type"
},
"upSpeed": {
"columnTitle": "Up",
"detailsTitle": "Upload Speed"
}
},
"states": {
"downloading": "Downloading",
"queued": "Queued",
"paused": "Paused",
"completed": "Completed",
"failed": "Failed",
"processing": "Processing",
"leeching": "Leeching",
"stalled": "Stalled",
"unknown": "Unknown",
"seeding": "Seeding"
},
"actions": {
"clients": {
"modalTitle": "Download clients list",
"pause": "Pause all clients/items",
"resume": "Resume all clients/items"
},
"client": {
"pause": "Pause client",
"resume": "Resume client"
},
"item": {
"pause": "Pause Item",
"resume": "Resume Item",
"delete": {
"title": "Delete Item",
"modalTitle": "Are you sure you want to delete this job?",
"entry": "Delete entry",
"entryAndFiles": "Delete entry and file(s)"
}
}
},
"globalRatio": "Global Ratio",
"contextMenu": {
"copyName": "Copy name",
"copyId": "Copy ID",
"clearFilters": "Clear filters"
},
"footer": {
"filter": "Filter downloads"
},
"stats": {
"show": "Show global stats",
"hide": "Hide global stats",
"overallProgress": "Overall queue progress",
"totalSize": "Total queue size",
"clients": "{count, plural, one {# client} other {# clients}}"
}
},
"mediaReleases": {
"name": "Media releases",
"description": "Display newly added medias or upcoming releases from different integrations",
"option": {
"layout": {
"label": "Layout",
"option": {
"backdrop": {
"label": "Backdrop"
},
"poster": {
"label": "Poster"
}
}
},
"showDescriptionTooltip": {
"label": "Show description tooltip"
},
"showType": {
"label": "Show media type badge"
},
"showSource": {
"label": "Show source integration"
}
},
"length": {
"duration": "{length}min"
}
},
"mediaRequests-requestList": {
"name": "Media Requests List",
"description": "See a list of all media requests from your Overseerr or Jellyseerr instance",
"option": {
"linksTargetNewTab": {
"label": "Open links in new tab"
},
"statusFilter": {
"label": "Statuses to show"
},
"recentDays": {
"label": "Show only recent requests"
}
},
"pending": {
"approve": "Approve request",
"approving": "Approving request...",
"decline": "Decline request"
},
"availability": {
"unknown": "Unknown",
"pending": "Pending",
"processing": "Processing",
"requested": "Requested",
"partiallyAvailable": "Partial",
"available": "Available",
"blacklisted": "Blacklisted",
"deleted": "Deleted"
},
"status": {
"pending": "Pending",
"approved": "Approved",
"declined": "Declined",
"failed": "Failed",
"completed": "Completed"
},
"toBeDetermined": "TBD"
},
"mediaRequests-requestStats": {
"name": "Media Requests Stats",
"description": "Statistics about your media requests",
"option": {},
"titles": {
"stats": {
"main": "Media Stats",
"approved": "Already approved",
"pending": "Pending approvals",
"processing": "Being processed",
"declined": "Already declined",
"available": "Already Available",
"tv": "TV requests",
"movie": "Movie requests",
"total": "Total"
},
"users": {
"main": "Top Users",
"requests": "Requests"
}
}
},
"mediaTranscoding": {
"name": "Media transcoding",
"description": "Statistics, current queue and worker status of your media transcoding",
"option": {
"defaultView": {
"label": "Default view"
},
"queuePageSize": {
"label": "Queue page size"
}
},
"tab": {
"workers": "Workers",
"queue": "Queue",
"statistics": "Statistics"
},
"currentIndex": "{start}-{end} of {total}",
"healthCheck": {
"title": "Health check",
"queued": "Queued",
"status": {
"healthy": "Healthy",
"unhealthy": "Unhealthy"
}
},
"panel": {
"statistics": {
"empty": "Empty",
"transcodes": "Transcodes",
"transcodesCount": "Transcodes",
"healthChecksCount": "Health checks",
"filesCount": "Files",
"savedSpace": "Saved space",
"healthChecks": "Health checks",
"videoCodecs": "Codecs",
"videoContainers": "Containers",
"videoResolutions": "Resolutions"
},
"workers": {
"empty": "Empty",
"table": {
"file": "File",
"eta": "ETA",
"progress": "Progress",
"transcode": "Transcode",
"healthCheck": "Health check"
}
},
"queue": {
"empty": "Empty",
"table": {
"file": "File",
"size": "Size",
"transcode": "Transcode",
"healthCheck": "Health check"
}
}
}
},
"mediaMissing": {
"name": "Missing & Queued Media",
"description": "Shows missing and queued movies and episodes from Radarr and Sonarr",
"option": {
"showMissing": {
"label": "Show missing items"
},
"showQueued": {
"label": "Show queued items"
},
"pageSize": {
"label": "Items per page"
}
},
"tab": {
"missing": "Missing",
"queued": "Queued"
},
"type": {
"movie": "Movie",
"episode": "Episode"
},
"empty": {
"missing": "No missing items",
"queued": "No queued items",
"noTabsEnabled": "Enable at least one tab in the widget settings"
},
"timeLeft": "Time left"
},
"rssFeed": {
"name": "RSS feeds",
"description": "Monitor and display one or more generic RSS, ATOM or JSON feeds",
"option": {
"feedUrls": {
"label": "Feed URLs"
},
"enableRtl": {
"label": "Enable RTL"
},
"textLinesClamp": {
"label": "Description line clamp"
},
"maximumAmountPosts": {
"label": "Amount posts limit"
},
"hideDescription": {
"label": "Hide description"
},
"showPosterImage": {
"label": "Show poster image"
}
}
},
"releases": {
"name": "Releases",
"description": "Displays a list of the current version of the given repositories with the given version regex.",
"option": {
"newReleaseWithin": {
"label": "New Release Within",
"description": "Usage example: 1w (1 week), 10M (10 months). Accepted unit types h (hours), d (days), w (weeks), M (months), y (years). Leave empty for no highlighting of new releases."
},
"staleReleaseWithin": {
"label": "Stale Release Within",
"description": "Usage example: 1w (1 week), 10M (10 months). Accepted unit types h (hours), d (days), w (weeks), M (months), y (years). Leave empty for no highlighting of stale releases."
},
"showOnlyHighlighted": {
"label": "Show Only Highlighted",
"description": "Show only new or stale releases. As per the above."
},
"showDetails": {
"label": "Show Details"
},
"showOnlyIcon": {
"label": "Show Only Icon"
},
"topReleases": {
"label": "Top Releases",
"description": "The max number of latest releases to show. Zero means no limit."
},
"repositories": {
"label": "Repositories",
"addRepository": {
"label": "Add repository"
},
"importRepositories": {
"label": "Import from docker",
"loading": "Loading docker images",
"noImagesFound": "No docker images found",
"listFoundImages": "List of found images",
"listAlreadyImportedImages": "List of already imported images",
"allImagesAlreadyImported": "All images already imported",
"onlyAdminCanImport": "Only administrators can import from docker",
"selectAll": "Select all",
"deselectAll": "Deselect all"
},
"provider": {
"label": "Provider"
},
"providerUrl": {
"label": "Provider URL"
},
"identifier": {
"label": "Identifier",
"placeholder": "Name or Owner/Name"
},
"name": {
"label": "Name"
},
"versionFilter": {
"label": "Version Filter",
"prefix": {
"label": "Prefix"
},
"precision": {
"label": "Precision",
"options": {
"none": "None"
}
},
"suffix": {
"label": "Suffix"
},
"regex": {
"label": "Regular Expression"
}
},
"edit": {
"label": "Edit"
},
"editForm": {
"title": "Edit Repository",
"cancel": {
"label": "Cancel"
},
"confirm": {
"label": "Confirm"
}
},
"importForm": {
"title": "Import from Docker"
},
"example": {
"label": "Example"
},
"invalid": "Invalid repository definition, please check the values",
"noProvider": {
"label": "No Provider",
"tooltip": "The provider could not be parsed, please manually set it after importing the images"
},
"tokens": {
"label": "Provider Tokens",
"token": "Token",
"configured": "Token configured",
"notConfigured": "No token set",
"save": "Save"
}
}
},
"not-found": "Not Found",
"pre-release": "Pre-Release",
"archived": "Archived",
"forked": "Forked",
"starsCount": "Stars",
"forksCount": "Forks",
"issuesCount": "Open Issues",
"markViewed": "Mark as viewed",
"openProjectPage": "Open Project Page",
"openReleasePage": "Open Release Page",
"releaseDescription": "Release Description",
"projectDescription": "Project Description",
"created": "Created",
"error": {
"label": "Error",
"messages": {
"invalidIdentifier": "Invalid identifier",
"noMatchingVersion": "No matching version found",
"noReleasesFound": "No releases found",
"noProviderSelected": "No provider selected",
"noProviderResponse": "No response from provider",
"unexpected": "Unexpected provider error"
}
}
},
"networkControllerSummary": {
"option": {},
"card": {
"vpn": {
"countConnected": "{count} connected"
}
},
"error": {
"integrationsDisconnected": "No data available, all integrations disconnected",
"unknownContentOption": "Unknown content option for network controller summary widget: "
},
"name": "Network Controller Summary",
"description": "Displays the summary of a Network Controller (like UniFi Controller)"
},
"networkControllerStatus": {
"card": {
"variants": {
"wired": {
"name": "Wired"
},
"wifi": {
"name": "Wi-Fi"
}
},
"users": {
"label": "Users"
},
"guests": {
"label": "Guests"
}
},
"option": {
"content": {
"option": {
"wifi": {
"label": "Wi-Fi"
},
"wired": {
"label": "Wired"
}
},
"label": "Widget Content"
}
},
"error": {
"integrationsDisconnected": "No data available, all integrations disconnected",
"unknownContentOption": "Unknown content option for network status widget: "
},
"name": "Network Status",
"description": "Display connected devices on a network"
},
"networkController": {
"error": {
"internalServerError": "Failed to fetch Network Controller Summary"
}
},
"firewall": {
"name": "Firewall Monitoring",
"description": "Displays a summary of firewalls",
"tab": {
"system": "System",
"interfaces": "Interfaces"
},
"error": {
"internalServerError": "Unable to get data from firewall"
},
"option": {
"interfaces": "Network interfaces to display"
},
"widget": {
"fwname": "Name",
"version": "Version",
"versiontitle": "Versions",
"cputitle": "CPU usage",
"memorytitle": "Memory usage",
"cpu": "CPU",
"memory": "Memory",
"interfaces": {
"name": "name",
"trans": "Transmited",
"recv": "Received",
"title": "Network Interfaces"
}
}
},
"notifications": {
"name": "Notifications",
"description": "Display notification history from an integration",
"noItems": "No notifications to display.",
"option": {
"hideLogos": {
"label": "Hide logos"
}
}
},
"speedtestTracker": {
"name": "Speedtest Tracker",
"description": "Displays speed test results from your Speedtest Tracker instance.",
"option": {
"showLatestResult": {
"label": "Show latest result"
},
"showStats": {
"label": "Show averages"
},
"showRecentResults": {
"label": "Show recent results"
},
"showPingGraph": {
"label": "Show ping graph"
}
},
"latestResult": "Latest Result",
"averages": "Averages",
"tests": "{count} tests",
"recentResults": "Recent Results",
"recentResultsSpeed": "Speed",
"recentResultsPing": "Ping",
"download": "Download",
"upload": "Upload",
"ping": "Ping",
"status": "Status",
"avgDownload": "Avg Download",
"avgUpload": "Avg Upload",
"avgPing": "Avg Ping",
"healthy": "Healthy",
"unhealthy": "Unhealthy",
"ok": "OK",
"fail": "Fail",
"noSectionsEnabled": "Enable at least one section in widget options.",
"error": {
"internalServerError": "Failed to fetch speedtest data"
}
},
"uptimeKuma": {
"name": "Uptime Kuma",
"description": "Monitor uptime statistics from your Uptime Kuma status page",
"option": {
"showAverageUptime": {
"label": "Show average uptime",
"description": "Display the combined 24-hour average uptime percentage"
},
"showUptimeRing": {
"label": "Show uptime ring",
"description": "Display a progress ring alongside the average uptime value"
},
"showTotalMonitors": {
"label": "Show total monitors",
"description": "Display the total number of configured monitors"
},
"showUpCount": {
"label": "Show up count",
"description": "Display how many monitors are currently up"
},
"showDownCount": {
"label": "Show down count",
"description": "Display how many monitors are currently down"
},
"showPausedCount": {
"label": "Show paused count",
"description": "Display how many monitors are currently paused"
}
},
"averageUptime": "Average uptime (24h)",
"stats": {
"totalMonitors": "Total monitors",
"upCount": "Up",
"downCount": "Down",
"pausedCount": "Paused"
},
"error": {
"internalServerError": "Failed to fetch uptime data"
}
},
"traefik": {
"name": "Traefik",
"description": "Overview of Traefik routers, services, middlewares, and entry points",
"option": {
"showTcp": {
"label": "Show TCP"
},
"showUdp": {
"label": "Show UDP"
},
"showEntryPoints": {
"label": "Show entry points"
}
},
"instances": "Traefik instances",
"versionUnknown": "Version unknown",
"summary": {
"routers": "Routers",
"entryPoints": "Entry points"
},
"resource": {
"routers": "Routers",
"services": "Services",
"middlewares": "Middlewares"
},
"status": {
"healthy": "Healthy",
"errors": "{count} errors",
"warnings": "{count} warnings"
},
"error": {
"internalServerError": "Failed to fetch Traefik data"
}
},
"audioStats": {
"name": "Audio stats",
"description": "Library and playback statistics from Navidrome or Audiobookshelf",
"option": {
"showArtists": {
"label": "Show artists",
"description": "Show the total number of artists in your music library (Navidrome)"
},
"showAlbums": {
"label": "Show albums",
"description": "Show the total number of albums in your music library (Navidrome)"
},
"showSongs": {
"label": "Show songs",
"description": "Show the total number of songs in your music library (Navidrome)"
},
"showNowPlaying": {
"label": "Show now playing",
"description": "Show tracks currently being played (Navidrome)"
},
"showNowPlayingList": {
"label": "Show now playing list",
"description": "Show individual tracks instead of only the active stream count (Navidrome)"
},
"maxNowPlayingItems": {
"label": "Max now playing items",
"description": "Maximum number of tracks to show in the now playing list (Navidrome)"
},
"showLibraryCount": {
"label": "Show library count",
"description": "Show the number of libraries on your instance (Audiobookshelf)"
},
"showAudiobooks": {
"label": "Show audiobooks",
"description": "Show the total number of audiobooks across all libraries (Audiobookshelf)"
},
"showPodcasts": {
"label": "Show podcasts",
"description": "Show the total number of podcasts across all libraries (Audiobookshelf)"
},
"showListeningTime": {
"label": "Show listening time",
"description": "Show your total listening time (Audiobookshelf)"
},
"showActiveSessions": {
"label": "Show active sessions",
"description": "Show the number of currently active playback sessions (Audiobookshelf)"
},
"compactMode": {
"label": "Compact mode",
"description": "Use a denser layout with smaller tiles, ideal for small widget sizes"
}
},
"artists": "Artists",
"albums": "Albums",
"songs": "Songs",
"libraryCount": "Libraries",
"audiobooks": "Audiobooks",
"podcasts": "Podcasts",
"listeningTime": "Listening Time",
"activeSessions": "Active Sessions",
"nowPlaying": "Now Playing",
"nowPlayingCount": "{count, plural, one {# stream} other {# streams}}",
"error": {
"internalServerError": "Failed to fetch audio stats data"
}
},
"systemResources": {
"name": "System resources",
"description": "CPU, Memory, Disk and other hardware usage of your system",
"option": {
"hasShadow": {
"label": "Enable chart shading"
},
"visibleCharts": {
"label": "Visible charts",
"description": "Select the charts you want to be visible.",
"option": {
"cpu": "CPU",
"memory": "Memory",
"gpu": "GPU",
"network": "Network"
}
},
"labelDisplayMode": {
"label": "Label display mode",
"option": {
"textWithIcon": "Show text with icon",
"text": "Show only text",
"icon": "Show only icon",
"hidden": "Hide label"
}
}
},
"card": {
"cpu": "CPU",
"memory": "MEM",
"gpu": "GPU",
"network": "NET",
"up": "UP",
"down": "DOWN"
}
},
"systemDisks": {
"name": "System disks",
"description": "Disk usage of your system",
"option": {
"showTemperatureIfAvailable": {
"label": "Show temperature if available"
},
"displayMode": {
"label": "Display mode",
"option": {
"percentage": {
"label": "Percentage (e.g., 76%)"
},
"absolute": {
"label": "Absolute values (e.g., 800GB / 1TB)"
},
"free": {
"label": "Free space percentage (e.g., 24% free)"
}
}
},
"showBackgroundBar": {
"label": "Show background usage bar"
},
"visibleStorageVolumes": {
"label": "Visible storage volumes",
"description": "Only available when all selected integrations are Synology. Leave empty to show all detected storage volumes.",
"placeholder": "Select storage volumes"
}
},
"status": {
"unhealthy": "Unhealthy"
}
},
"customApi": {
"name": "Custom API",
"description": "Display data from any external API with custom configuration.",
"option": {
"definitionId": {
"label": "Definition ID"
},
"refreshInterval": {
"label": "Refresh interval",
"description": "How often to refetch data from the API (in seconds)"
}
},
"noDefinition": "No definition selected",
"definitionNotFound": "Widget definition not found. It may have been deleted.",
"noDisplayOutput": "No display output",
"executeConfirm": "Are you sure you want to execute this action?",
"executing": "Executing...",
"executeSuccess": "Action executed successfully",
"executeFailed": "Action failed. Check the widget configuration."
},
"beszelSystemTable": {
"name": "Beszel Systems (Table)",
"description": "Table view of all Beszel-monitored systems with sortable columns and status indicators",
"option": {
"statusFilter": {
"label": "Status filter"
},
"sortBy": {
"label": "Sort by"
},
"sortDirection": {
"label": "Sort direction"
},
"showCpu": {
"label": "Show CPU"
},
"showMemory": {
"label": "Show memory"
},
"showDisk": {
"label": "Show disk"
},
"showGpu": {
"label": "Show GPU"
},
"showLoadAvg": {
"label": "Show load average"
},
"showNet": {
"label": "Show network"
},
"showTemp": {
"label": "Show temperature"
},
"showBattery": {
"label": "Show battery"
},
"showServices": {
"label": "Show services"
},
"showUptime": {
"label": "Show uptime"
},
"showAgent": {
"label": "Show agent version"
}
},
"noRecords": "No systems found",
"error": {
"internalServerError": "Unable to connect to Beszel. Check your integration settings."
},
"column": {
"system": "System",
"cpu": "CPU",
"memory": "Memory",
"disk": "Disk",
"gpu": "GPU",
"loadAvg": "Load Avg",
"net": "Net",
"temp": "Temp",
"battery": "Bat",
"services": "Services",
"uptime": "Uptime",
"agent": "Agent"
}
},
"beszelSystemGrid": {
"name": "Beszel Systems (Grid)",
"description": "Card grid view of all Beszel-monitored systems with real-time metrics",
"option": {
"statusFilter": {
"label": "Status filter"
},
"showCpu": {
"label": "Show CPU"
},
"showMemory": {
"label": "Show memory"
},
"showDisk": {
"label": "Show disk"
},
"showGpu": {
"label": "Show GPU"
},
"showLoadAvg": {
"label": "Show load average"
},
"showNet": {
"label": "Show network"
},
"showTemp": {
"label": "Show temperature"
},
"showBattery": {
"label": "Show battery"
},
"showServices": {
"label": "Show services"
},
"showUptime": {
"label": "Show uptime"
},
"showAgent": {
"label": "Show agent version"
}
},
"error": {
"internalServerError": "Unable to connect to Beszel. Check your integration settings."
},
"empty": {
"noSystems": "No systems found"
},
"metric": {
"cpu": "CPU",
"memory": "Memory",
"disk": "Disk",
"gpu": "GPU",
"loadAvg": "Load Avg",
"net": "Net",
"temp": "Temp",
"battery": "Bat",
"services": "Services",
"uptime": "Uptime",
"agent": "Agent"
}
},
"beszelAlerts": {
"name": "Beszel Alerts",
"description": "View Beszel alert configurations and history",
"option": {
"showHistory": {
"label": "Show alert history"
},
"maxHistoryItems": {
"label": "Max history items"
}
},
"empty": "No alerts configured",
"error": {
"internalServerError": "Unable to connect to Beszel. Check your integration settings."
},
"history": "History",
"resolved": "Resolved",
"status": {
"triggered": "Triggered",
"ok": "OK"
}
},
"beszelSystemStats": {
"name": "Beszel System Stats",
"description": "Time-series charts for CPU, memory, disk, network, and Docker container metrics",
"option": {
"systemId": {
"label": "System",
"description": "Select a Beszel system to display stats for"
},
"timePeriod": {
"label": "Time period"
},
"showCpu": {
"label": "Show CPU chart"
},
"showMemory": {
"label": "Show memory chart"
},
"showDisk": {
"label": "Show disk chart"
},
"showDiskIO": {
"label": "Show disk I/O chart"
},
"showNetwork": {
"label": "Show network chart"
},
"showDockerCpu": {
"label": "Show Docker CPU chart"
},
"showDockerMemory": {
"label": "Show Docker memory chart"
},
"showDockerNetwork": {
"label": "Show Docker network chart"
}
},
"selectSystem": "Select system",
"empty": {
"noSystems": "No systems found"
},
"error": {
"internalServerError": "Unable to connect to Beszel. Check your integration settings.",
"liveConnectionFailed": "Live connection failed. Your Beszel instance may not support real-time streaming.",
"switchToHistorical": "Switch to historical view",
"systemNotFound": "Selected system was not found. Choose a different system."
},
"chart": {
"cpu": {
"title": "CPU Usage",
"subtitle": "Average system-wide CPU utilization",
"series": "CPU"
},
"memory": {
"title": "Memory Usage",
"subtitle": "Precise utilization at the recorded time",
"series": "Used",
"cache": "Cache/Buffers"
},
"disk": {
"title": "Disk Usage",
"subtitle": "Usage by filesystem",
"series": "Root"
},
"diskIO": {
"title": "Disk I/O",
"subtitle": "Throughput of root filesystem",
"read": "Read",
"write": "Write"
},
"storage": {
"title": "Storage",
"subtitle": "Per-filesystem disk usage",
"series": "Used"
},
"network": {
"title": "Bandwidth",
"subtitle": "Network traffic of public interfaces",
"sent": "Sent",
"recv": "Received"
},
"dockerCpu": {
"title": "Docker CPU Usage",
"subtitle": "Average CPU utilization of containers"
},
"dockerMemory": {
"title": "Docker Memory Usage",
"subtitle": "Memory usage of docker containers"
},
"dockerNetwork": {
"title": "Docker Network I/O",
"subtitle": "Network traffic of docker containers"
}
}
}
},
"widgetPreview": {
"toggle": {
"enabled": "Edit mode enabled",
"disabled": "Edit mode disabled"
},
"dimensions": {
"title": "Change dimensions"
}
},
"board": {
"action": {
"duplicate": {
"title": "Duplicate board",
"message": "This will duplicate the board {name} with all its content. If widgets reference integrations, that you are not allowed to use, they will be removed.",
"notification": {
"success": {
"title": "Board duplicated",
"message": "The board was successfully duplicated"
},
"error": {
"title": "Unable to duplicate board",
"message": "The board could not be duplicated"
}
}
},
"edit": {
"notification": {
"success": {
"title": "Changes applied successfully",
"message": "The board was successfully saved"
},
"error": {
"title": "Unable to apply changes",
"message": "The board could not be saved"
}
},
"confirmLeave": {
"title": "Unsaved changes",
"message": "You have unsaved changes, are you sure you want to leave?"
}
},
"oldImport": {
"label": "Import from homarr before 1.0.0",
"notification": {
"success": {
"title": "Import successful",
"message": "The board was successfully imported"
},
"error": {
"title": "Import failed",
"message": "The board could not be imported, check the logs for further details"
}
},
"form": {
"file": {
"label": "Select JSON file",
"invalidError": "Invalid configuration file"
},
"apps": {
"label": "Apps",
"avoidDuplicates": {
"label": "Avoid duplicates",
"description": "Ignores apps where an app with the same href already exists"
},
"onlyImportApps": {
"label": "Only import apps",
"description": "Only adds the apps, the board need to be recreated manually"
}
},
"name": {
"label": "Board name"
},
"screenSize": {
"label": "Screen size",
"description": "In versions before 1.0 three different modes existed, so you were able to choose the amount of columns for each screen size.",
"option": {
"sm": "Small",
"md": "Medium",
"lg": "Large"
}
},
"sidebarBehavior": {
"label": "Sidebar behavior",
"description": "Sidebars were removed in 1.0, you can select what should happen with the items inside them.",
"option": {
"lastSection": {
"label": "Last section",
"description": "Sidebar will be displayed below the last section"
},
"removeItems": {
"label": "Remove items",
"description": "Items contained in the sidebar will be removed"
}
}
}
}
},
"quickCreateApp": {
"modal": {
"title": "Create app on the fly",
"createAndUse": "Create and use"
}
}
},
"field": {
"pageTitle": {
"label": "Page title"
},
"metaTitle": {
"label": "Meta title"
},
"logoImageUrl": {
"label": "Logo image URL"
},
"faviconImageUrl": {
"label": "Favicon image URL"
},
"backgroundImageUrl": {
"label": "Background image URL",
"placeholder": "Start typing to search local images",
"group": {
"your": "Your images",
"other": "Other images"
}
},
"backgroundImageAttachment": {
"label": "Background image attachment",
"option": {
"fixed": {
"label": "Fixed",
"description": "Background stays in the same position."
},
"scroll": {
"label": "Scroll",
"description": "Background scrolls with your mouse."
}
}
},
"backgroundImageRepeat": {
"label": "Background image repeat",
"option": {
"repeat": {
"label": "Repeat",
"description": "The image is repeated as much as needed to cover the whole background image painting area."
},
"no-repeat": {
"label": "No repeat",
"description": "The image is not repeated and may not fill the entire space."
},
"repeat-x": {
"label": "Repeat X",
"description": "Same as 'Repeat' but only on horizontal axis."
},
"repeat-y": {
"label": "Repeat Y",
"description": "Same as 'Repeat' but only on vertical axis."
}
}
},
"backgroundImageSize": {
"label": "Background image size",
"option": {
"cover": {
"label": "Cover",
"description": "Scales the image as small as possible to cover the entire window by cropping excessive space."
},
"contain": {
"label": "Contain",
"description": "Scales the image as large as possible within its container without cropping or stretching the image."
}
}
},
"primaryColor": {
"label": "Primary color"
},
"secondaryColor": {
"label": "Secondary color"
},
"opacity": {
"label": "Opacity"
},
"iconColor": {
"label": "Icon color"
},
"clearColor": {
"label": "Clear color"
},
"customCss": {
"label": "Custom css for this board",
"description": "Further, customize your dashboard using CSS, only recommended for experienced users",
"customClassesAlert": {
"title": "Custom classes",
"description": "You can add custom classes to your board items in the advanced options of each item and use them in the custom CSS above."
}
},
"disableStatus": {
"label": "Disable app status",
"description": "Disables the status check for all apps on this board"
},
"columnCount": {
"label": "Column count"
},
"itemRadius": {
"label": "Item radius",
"description": "Changes the roundness of tiles on your board",
"option": {
"xs": "Very small",
"sm": "Small",
"md": "Medium",
"lg": "Large",
"xl": "Very large"
}
},
"name": {
"label": "Name"
},
"isPublic": {
"label": "Public",
"description": "Public boards are accessible by everyone, even without an account."
}
},
"content": {
"metaTitle": "{boardName} board"
},
"setting": {
"title": "Settings for {boardName} board",
"section": {
"general": {
"title": "General",
"unrecognizedLink": "The provided link is not recognized and won't preview, it might still work."
},
"layout": {
"title": "Layout",
"responsive": {
"title": "Responsive layouts",
"action": {
"add": "Add layout"
}
}
},
"background": {
"title": "Background"
},
"appearance": {
"title": "Appearance"
},
"customCss": {
"title": "Custom css"
},
"behavior": {
"title": "Behavior"
},
"access": {
"title": "Access control",
"permission": {
"item": {
"view": {
"label": "View board"
},
"modify": {
"label": "Modify board"
},
"full": {
"label": "Full access"
}
}
}
},
"dangerZone": {
"title": "Danger zone",
"action": {
"rename": {
"label": "Rename board",
"description": "Changing the name will break any links to this board.",
"button": "Change name",
"modal": {
"title": "Rename board"
}
},
"visibility": {
"label": "Change board visibility",
"description": {
"public": "This board is currently public.",
"private": "This board is currently private."
},
"button": {
"public": "Make private",
"private": "Make public"
},
"confirm": {
"public": {
"title": "Make board private",
"description": "Are you sure you want to make this board private? This will hide the board from the public. Links for guest users will break."
},
"private": {
"title": "Make board public",
"description": "Are you sure you want to make this board public? This will make the board accessible to everyone."
}
}
},
"delete": {
"label": "Delete this board",
"description": "Once you delete a board, there is no going back. Please be certain.",
"button": "Delete this board",
"confirm": {
"title": "Delete board",
"description": "Are you sure you want to delete this board? This will permanently delete the board and all its content."
}
}
}
}
}
},
"error": {
"noBoard": {
"title": "Welcome to Homarr",
"description": "A sleek, modern dashboard that puts all of your apps and services at your fingertips.",
"link": "Create your first board",
"notice": "To make this page disappear, create a board and set it as the home board"
},
"notFound": {
"title": "Board not found",
"description": "The board specified was either not found or you don't have access to it.",
"link": "View all boards",
"notice": "Check the link or contact an administrator if you think it should be accessible"
},
"homeBoard": {
"title": "No home board",
"admin": {
"description": "You haven't set a home board for the server yet.",
"link": "Configure server-wide home board",
"notice": "To make this page disappear for all users, set a home board for the server"
},
"user": {
"description": "You haven't set a home board yet.",
"link": "Configure your home board",
"notice": "To make this page disappear, specify the home board in your preferences"
},
"anonymous": {
"description": "The server administrator hasn't set a home board yet.",
"link": "View public boards",
"notice": "To make this page disappear, ask the server administrator to set a home board for the server"
}
}
}
},
"layout": {
"field": {
"name": {
"label": "Name"
},
"columnCount": {
"label": "Column count"
},
"breakpoint": {
"label": "Breakpoint",
"description": "Layout will be used on all screens larger than this breakpoint until the next bigger breakpoint."
}
}
},
"management": {
"metaTitle": "Management",
"title": {
"morning": "Good morning, {username}",
"afternoon": "Good afternoon, {username}",
"evening": "Good evening, {username}"
},
"notFound": {
"title": "Not Found",
"text": "Could not find requested resource"
},
"error": {
"title": "This page couldn't load",
"text": "An unexpected error occurred while loading this page. Your navigation is still available — try reloading, or use another section from the sidebar.",
"digest": "Error reference: {digest}"
},
"navbar": {
"items": {
"home": "Home",
"boards": "Boards",
"apps": "Apps",
"integrations": "Integrations",
"customWidgets": "Custom Widgets",
"searchEngies": "Search engines",
"medias": "Medias",
"users": {
"label": "Users",
"items": {
"manage": "Manage",
"invites": "Invites",
"groups": "Groups"
}
},
"tools": {
"label": "Tools",
"items": {
"docker": "Docker",
"kubernetes": "Kubernetes",
"logs": "Logs",
"api": "API & MCP",
"certificates": "Certificates",
"tasks": "Tasks",
"backup": "Backup"
}
},
"settings": "Settings",
"help": {
"label": "Help",
"items": {
"documentation": "Documentation",
"submitIssue": "Submit an issue",
"discord": "Community Discord",
"sourceCode": "Source Code"
}
},
"about": "About"
}
},
"page": {
"home": {
"statistic": {
"board": "Boards",
"user": "Users",
"invite": "Invites",
"integration": "Integrations",
"app": "Apps",
"group": "Groups",
"searchEngine": "Search engines",
"media": "Medias"
},
"statisticLabel": {
"boards": "Boards",
"resources": "Resources",
"authentication": "Authentication",
"authorization": "Authorization"
},
"heroBanner": {
"title": "Welcome back to your",
"subtitle": "{app} Board"
}
},
"board": {
"title": "Your boards",
"action": {
"new": {
"label": "New board"
},
"open": {
"label": "Open board"
},
"settings": {
"label": "Settings"
},
"setHomeBoard": {
"label": "Set as your home board",
"badge": {
"label": "Home",
"tooltip": "This board will show as your home board"
}
},
"setMobileHomeBoard": {
"label": "Set as your mobile board",
"badge": {
"label": "Mobile",
"tooltip": "This board will show as your mobile board"
}
},
"duplicate": {
"label": "Duplicate board"
},
"delete": {
"label": "Delete permanently",
"confirm": {
"title": "Delete board",
"description": "Are you sure you want to delete the {name} board?"
}
}
},
"visibility": {
"public": "This board is public",
"private": "This board is private"
},
"noResults": {
"title": "No boards yet"
},
"modal": {
"createBoard": {
"field": {
"name": {
"label": "Name"
}
}
}
}
},
"media": {
"includeFromAllUsers": "Include media from all users"
},
"user": {
"back": "Back to users",
"fieldsDisabledExternalProvider": "Certain fields are disabled because they are managed by an external authentication provider.",
"setting": {
"general": {
"title": "General",
"item": {
"language": "Language & Region",
"board": {
"title": "Home board",
"type": {
"general": "General",
"mobile": "Mobile"
}
},
"search": "Search",
"firstDayOfWeek": "First day of the week",
"accessibility": "Accessibility",
"onboardingTours": {
"title": "Onboarding Tours",
"description": "Reset the onboarding tours to see them again on your next visit to the management area or dashboard.",
"reset": "Reset onboarding tours",
"resetSuccess": {
"title": "Tours reset",
"message": "Onboarding tours will show again on your next visit"
},
"status": {
"completed": "Completed",
"notStarted": "Not started"
},
"name": {
"management": "Management",
"dashboard": "Dashboard"
}
}
}
},
"security": {
"title": "Security"
},
"board": {
"title": "Boards"
}
},
"list": {
"metaTitle": "Manage users",
"title": "Users"
},
"edit": {
"metaTitle": "Edit user {username}"
},
"create": {
"metaTitle": "Create user",
"title": "Create new user",
"step": {
"personalInformation": {
"label": "Personal information"
},
"security": {
"label": "Security"
},
"groups": {
"label": "Groups",
"title": "Select all groups user should be member of",
"description": "The {everyoneGroup} group is assigned to all users and can not be removed."
},
"review": {
"label": "Review"
},
"completed": {
"title": "User created"
},
"error": {
"title": "User creation failed"
}
},
"action": {
"createAnother": "Create another user",
"back": "Return to the user list"
}
},
"invite": {
"title": "Manage user invites",
"action": {
"new": {
"title": "New invite",
"description": "After the expiration, an invite will no longer be valid and the recipient of the invite won't be able to create an account."
},
"copy": {
"title": "Copy invite",
"description": "Your invitation has been generated. After this modal closes, <b>you'll not be able to copy this link anymore.</b> If you do no longer wish to invite said person, you can delete this invitation any time.",
"link": "Invitation link",
"button": "Copy & close"
},
"delete": {
"title": "Delete invite",
"description": "Are you sure, that you want to delete this invitation? Users with this link will no longer be able to create an account using that link."
}
},
"field": {
"id": {
"label": "ID"
},
"creator": {
"label": "Creator"
},
"expirationDate": {
"label": "Expiration date"
},
"token": {
"label": "Token"
}
}
}
},
"group": {
"back": "Back to groups",
"setting": {
"general": {
"title": "General",
"owner": "Owner",
"ownerOfGroup": "Owner of this group",
"ownerOfGroupDeleted": "The owner of this group was deleted. It currently has no owner."
},
"setting": {
"title": "Settings",
"alert": "Group settings are prioritized by the order of groups in the list. The top settings overwrite the bottom settings.",
"board": {
"title": "Boards"
}
},
"members": {
"title": "Members",
"search": "Find a member",
"notFound": "No members found"
},
"permissions": {
"title": "Permissions",
"form": {
"unsavedChanges": "You have unsaved changes!"
}
}
}
},
"settings": {
"title": "Settings",
"notification": {
"success": {
"message": "Settings saved successfully"
},
"error": {
"message": "Failed to save settings"
}
},
"section": {
"analytics": {
"title": "Analytics",
"general": {
"title": "Help us improve Homarr",
"text": "This helps us figure out what people actually use so we know where to spend our time. We see stuff like how many widgets or integrations you have, your Homarr version, and what database you're on. That's it — no personal info, no URLs, no names, nothing that could identify you or your setup."
}
},
"crawlingAndIndexing": {
"title": "Crawling and Indexing",
"warning": "Enabling or disabling any settings here will severely impact how search engines will index & crawl your page. Any setting is a request and it is up to the crawler to apply these settings. Any modification may take up to multiple days or weeks to apply. Some settings may be search engine specific.",
"noIndex": {
"title": "No index",
"text": "Do not index the website on search engines and don't show it in any search results"
},
"noFollow": {
"title": "No follow",
"text": "Do not follow any links while indexing. Disabling this will lead to crawlers attempting to follow all links on Homarr."
},
"noTranslate": {
"title": "No translate",
"text": "When the site language is likely not that the user is likely to want to read, Google will show a translation link in the search results"
},
"noSiteLinksSearchBox": {
"title": "No site links search box",
"text": "Google will build a search box with the crawled links along with other direct links. Enabling this will ask Google to disable that box."
}
},
"board": {
"title": "Boards",
"homeBoard": {
"label": "Global home board",
"mobileLabel": "Global mobile board",
"description": "Only public boards are available for selection"
},
"status": {
"title": "App status",
"enableStatusByDefault": {
"label": "Enable status by default",
"description": "When adding an app item, the status will be enabled by default"
},
"forceDisableStatus": {
"label": "Force disable status",
"description": "Status for apps will be disabled for all users and can't be enabled"
}
}
},
"user": {
"title": "Users",
"enableGravatar": {
"label": "Enable Gravatar",
"description": "Falls back to user avatars from Libravatar/Gravatar when no custom avatar is set and an email is configured"
}
},
"search": {
"title": "Search",
"defaultSearchEngine": {
"label": "Global default search engine",
"description": "Integration search engines can not be selected here"
}
},
"appearance": {
"title": "Appearance",
"defaultColorScheme": {
"label": "Default color scheme",
"options": {
"auto": "Auto",
"light": "Light",
"dark": "Dark"
}
}
},
"culture": {
"title": "Culture",
"defaultLocale": {
"label": "Default language"
}
}
}
},
"tool": {
"tasks": {
"title": "Tasks",
"status": {
"idle": "Idle",
"running": "Running",
"error": "Error",
"disabled": "Disabled"
},
"job": {
"iconsUpdater": {
"label": "Icons Updater"
},
"analytics": {
"label": "Analytics"
},
"ping": {
"label": "Pings"
}
},
"interval": {
"seconds": "Every {interval, plural, =1 {second} other {# seconds}}",
"minutes": "Every {interval, plural, =1 {minute} other {# minutes}}",
"hours": "Every {interval, plural, =1 {hour} other {# hours}}",
"midnight": "Every day at midnight",
"weeklyMonday": "Every week on monday",
"update": {
"success": {
"message": "Interval updated successfully"
},
"error": {
"message": "Failed to update interval"
}
}
},
"settings": {
"title": "Task settings for {jobName}"
},
"field": {
"name": {
"label": "Name"
},
"interval": {
"label": "Schedule interval"
},
"lastExecution": {
"label": "Last Execution"
},
"actions": {
"label": "Actions"
}
},
"table": {
"search": "Search {count} tasks..."
},
"action": {
"refresh": {
"label": "Refresh"
}
},
"refresh": {
"success": {
"message": "Tasks refreshed successfully"
},
"error": {
"message": "Failed to refresh tasks"
}
},
"trigger": {
"success": {
"message": "Task triggered successfully"
},
"error": {
"message": "Failed to trigger task"
}
},
"enable": {
"success": {
"message": "Task enabled successfully"
}
},
"disable": {
"success": {
"message": "Task disabled successfully"
}
},
"toggle": {
"error": {
"message": "Failed to toggle task status"
}
}
},
"api": {
"title": "API",
"modal": {
"createApiToken": {
"title": "API token created",
"description": "API token was created. Be careful, this token is encrypted in the database and will never be transferred again to you. If you loose this token, you'll no longer be able to retrieve this specific token.",
"button": "Copy and close"
}
},
"tab": {
"documentation": {
"label": "Documentation"
},
"apiKey": {
"label": "Authentication",
"title": "API Keys",
"button": {
"createApiToken": "Create API token"
},
"modal": {
"delete": {
"title": "Delete API token",
"text": "This will permanently delete the API token. API clients using this token can no longer authenticate and perform API requests. This action cannot be undone."
}
},
"table": {
"header": {
"id": "ID",
"createdBy": "Created by",
"actions": "Actions"
}
}
},
"mcp": {
"label": "AI / MCP",
"title": "AI Integration",
"subtitle": "Model Context Protocol (MCP) Server",
"description": "Connect AI assistants to your Homarr instance and control your entire homelab through natural language. Search and request media on Overseerr, manage Docker containers, toggle Pi-hole, check server health, control Home Assistant devices, and more — all from your AI assistant.",
"noApiKey": "You need an API key to authenticate with the MCP server.",
"createApiKeyButton": "Create API Key",
"endpoint": {
"title": "MCP Endpoint"
},
"authentication": {
"title": "Authentication",
"intro": "You can authenticate with your MCP server using either an API key or OAuth. Both methods grant the same level of access.",
"apiKey": {
"title": "API Key (manual)",
"description": "Pass the ApiKey header with your full API key in the MCP client configuration."
},
"oauth": {
"title": "OAuth (browser login)",
"description": "Clients that support OAuth (such as Claude Code, opencode, or Cursor) can authenticate by opening a browser window. Run the auth command in your client, log in to Homarr in the browser, and you're connected — an API key is created automatically.",
"hint": "OAuth tokens appear as regular API keys in the Authentication tab. You can revoke them at any time."
},
"permissions": "The API key determines the permissions available to the AI — it operates with the same access level as the key owner."
},
"clientConfig": {
"title": "Client Configuration",
"streamableHttp": {
"recommended": "Recommended",
"title": "Streamable HTTP",
"worksWith": "Works with: Cursor, Claude Desktop, VS Code Copilot, Windsurf, Claude Code",
"addToConfig": "Add to your MCP client configuration file:",
"cursor": "{name}: {file} in your project or global settings",
"claudeDesktop": "{name}: {file}",
"claudeCode": "{name}: {file} or use {command}",
"vsCodeCopilot": "{name}: {file} in workspace settings",
"replaceHint": "Replace the placeholder with the API key you received when creating it."
},
"stdio": {
"title": "stdio (legacy clients via mcp-remote bridge)",
"description": "For clients that only support stdio transport. Requires {dependency} (Node.js) installed locally:"
}
},
"testConnection": {
"title": "Test Your Connection",
"description": "Run this in your terminal to verify the endpoint is reachable and your API key works:",
"hint": "A successful response returns the MCP server capabilities. If you see an error, check the JSON response for hints."
},
"availableTools": {
"title": "Available Tools",
"description": "{count} tools available. Expand a category to see individual tools and their descriptions.",
"columnType": "Type",
"columnName": "Tool",
"columnDescription": "Description"
},
"troubleshooting": {
"title": "Troubleshooting",
"missingHeader": {
"title": "\"Missing ApiKey header\"",
"description": "Your client is not sending the {header} header. Verify the {section} section in your MCP config is correct. Some clients require restarting after config changes."
},
"invalidFormat": {
"title": "\"Invalid ApiKey format\"",
"description": "Make sure you copied the full API key, not just part of it."
},
"invalidKey": {
"title": "\"Invalid API key\"",
"description": "The key ID was not found or the token is wrong. API keys can only be viewed once when created. If you lost it, delete the old key and create a new one."
},
"connectionRefused": {
"title": "Connection refused / timeout",
"description": "Make sure the URL is reachable from your AI client. If Homarr runs behind a reverse proxy or in Docker, use the external URL (not {localhost}). Verify the port is correct (default: 7575 for Docker)."
},
"toolsNotAppearing": {
"title": "Tools not appearing",
"description": "Some tools require specific integrations to be configured (e.g. Docker, Overseerr). The tool list depends on what's available in your Homarr instance."
}
},
"copy": "Copy",
"oneClick": {
"title": "Install in One Click",
"subtitle": "Uses OAuth — authenticate in your browser on first use",
"vsCode": "Install in VS Code",
"cursor": "Install in Cursor",
"copyUrl": "Copy MCP URL",
"copied": "Copied!",
"copyHint": "For ChatGPT, Claude Code, or any MCP client",
"manualConfig": "Manual Configuration"
}
}
}
},
"backup": {
"title": "Full Database Backup",
"metaTitle": "Backup & Restore",
"export": {
"title": "Export Database",
"description": "Download a full backup of your SQLite database including all settings, users, boards, and encrypted integration secrets. The backup is bundled as a ZIP file with the encryption key and metadata.",
"button": "Download Backup",
"error": "Export failed",
"confirm": {
"title": "Sensitive data export",
"warningTitle": "This export contains your entire database.",
"warningBody": "The backup includes all users, integration secrets (encrypted), API keys, board configurations, and app data. Store the exported file securely and do not share it.",
"typePrompt": "Type \"{phrase}\" to continue",
"submit": "Export Database",
"cancel": "Cancel"
}
},
"import": {
"title": "Restore Database",
"description": "Upload a previously exported backup ZIP to restore your database. This will replace your entire database. If the backup was created with a different encryption key, secrets will be automatically re-encrypted.",
"warning": "Restoring a backup will completely replace your current database and restart the application. This action cannot be undone.",
"dropzone": {
"title": "Drop your backup ZIP here or click to browse",
"description": "Only .zip files from a Homarr SQLite backup are accepted"
},
"changeFile": "Change file",
"button": "Restore Database",
"success": {
"title": "Restore Complete",
"message": "Database has been restored successfully. The application is restarting..."
},
"error": "Import failed"
},
"preview": {
"title": "Backup Contents",
"exported": "Exported {date}",
"loading": "Analyzing backup file...",
"errorTitle": "Preview Error",
"entity": "Entity",
"count": "Count",
"boards": "Boards",
"entities": {
"board": "Boards",
"user": "Users",
"app": "Apps",
"integration": "Integrations",
"item": "Widgets",
"media": "Media",
"search_engine": "Search Engines"
},
"analyzeError": "Failed to analyze backup file",
"invalidMissingMetadata": "Invalid backup: missing metadata.json",
"invalidMissingDb": "Invalid backup: missing db.sqlite"
},
"restore": {
"dropzone": {
"title": "Drop your backup ZIP here",
"description": "Accepts .zip files from a Homarr SQLite backup (max 256 MB)"
},
"analyzing": "Analyzing backup...",
"changeFile": "Change file",
"continueToRestore": "Continue to restore",
"tryAgain": "Try again",
"analysisError": "Analysis Error",
"preview": {
"title": "Backup Contents",
"exported": "Exported {date}",
"entity": "Entity",
"count": "Count",
"boards": "Boards",
"entities": {
"board": "Boards",
"user": "Users",
"app": "Apps",
"integration": "Integrations",
"item": "Widgets",
"media": "Media",
"search_engine": "Search Engines"
},
"migrationsApplied": "{count} migration applied",
"migrationsAppliedPlural": "{count} migrations applied",
"migrationsOlderVersion": "This backup was from an older Homarr version. {count} schema migration was applied to bring it up to date.",
"migrationsOlderVersionPlural": "This backup was from an older Homarr version. {count} schema migrations were applied to bring it up to date.",
"migrationsUpToDate": "Database schema is up to date ({count} migrations applied)",
"upToDate": "Up to date",
"migrationsPending": "{count} pending"
},
"migration": {
"title": "Applying migrations ({current}/{total})",
"migrationLabel": "Migration {index}"
},
"confirm": {
"title": "Destructive action",
"warningTitle": "This will permanently replace your entire database.",
"warningBody": "All current boards, users, apps, integrations, settings, and sessions will be lost. This action cannot be undone. The application will restart after the restore.",
"typePrompt": "Type \"{phrase}\" to continue",
"cancel": "Cancel",
"submit": "Restore Database"
},
"progress": {
"title": "Restoring database...",
"extracting": "Extracting backup archive",
"migrating": "Applying database migrations",
"encrypting": "Re-encrypting integration secrets",
"swapping": "Replacing database file",
"restarting": "Restarting server"
},
"complete": {
"title": "Restore Complete",
"message": "Database has been restored successfully. The server is restarting — please refresh the page in a few seconds."
},
"failed": {
"title": "Restore Failed"
},
"invalidMissingMetadata": "Invalid backup: missing metadata.json",
"invalidMissingDb": "Invalid backup: missing db.sqlite",
"analyzeError": "Failed to analyze backup"
}
}
},
"about": {
"version": "Version {version}",
"text": "Homarr is a community driven open source project that is being maintained by volunteers. Thanks to these people, Homarr has been a growing project since 2021. Our team is working completely remote from many different countries on Homarr in their leisure time for no compensation.",
"accordion": {
"contributors": {
"title": "Contributors",
"subtitle": "{count} maintaining code & Homarr"
},
"translators": {
"title": "Translators",
"subtitle": "{count} contributing translations in many languages"
},
"sponsors": {
"title": "Sponsors",
"subtitle": "{count} supporting the project financially"
},
"libraries": {
"title": "Libraries",
"subtitle": "{count} used in the Code of Homarr"
},
"hotkeys": {
"title": "Hotkeys",
"subtitle": "Keyboard shortcuts to enhance your workflow",
"field": {
"shortcut": "Shortcut",
"action": "Action"
},
"action": {
"toggleBoardEdit": "Toggle board edit mode",
"toggleColorScheme": "Toggle light/dark mode",
"saveNotebook": "Save notebook (only inside notebook widget)",
"openSpotlight": "Open search"
},
"note": "Tip: Mod refers to both Ctrl key and ⌘ key on macOS"
}
}
}
}
},
"docker": {
"title": "Containers",
"table": {
"updated": "Updated {when}",
"refresh": {
"lastUpdated": "Last refresh {when}"
},
"search": "Seach {count} containers",
"selected": "{selectCount} of {totalCount} containers selected",
"footer": "Total {count} containers",
"totalCpu": "Total CPU: {cpu}%",
"totalMemory": "Total Mem: {memory}"
},
"field": {
"name": {
"label": "Name"
},
"state": {
"label": "State",
"option": {
"created": "Created",
"running": "Running",
"paused": "Paused",
"restarting": "Restarting",
"exited": "Exited",
"removing": "Removing",
"dead": "Dead"
}
},
"stats": {
"cpu": {
"label": "CPU"
},
"memory": {
"label": "Memory"
}
},
"containerImage": {
"label": "Image"
},
"ports": {
"label": "Ports"
},
"host": {
"label": "Host"
}
},
"action": {
"title": "Actions",
"logs": {
"label": "View logs",
"page": {
"title": "{name} logs"
}
},
"start": {
"label": "Start",
"notification": {
"success": {
"title": "Containers started",
"message": "The containers were started successfully"
},
"error": {
"title": "Containers not started",
"message": "The containers could not be started"
}
}
},
"stop": {
"label": "Stop",
"notification": {
"success": {
"title": "Containers stopped",
"message": "The containers were stopped successfully"
},
"error": {
"title": "Containers not stopped",
"message": "The containers could not be stopped"
}
}
},
"restart": {
"label": "Restart",
"notification": {
"success": {
"title": "Containers restarted",
"message": "The containers were restarted successfully"
},
"error": {
"title": "Containers not restarted",
"message": "The containers could not be restarted"
}
}
},
"remove": {
"label": "Remove",
"notification": {
"success": {
"title": "Containers removed",
"message": "The containers were removed successfully"
},
"error": {
"title": "Containers not removed",
"message": "The containers could not be removed"
}
}
},
"refresh": {
"label": "Refresh",
"notification": {
"success": {
"title": "Containers refreshed",
"message": "You are now viewing the most recent data"
},
"error": {
"title": "Containers not refreshed",
"message": "Something went wrong while refreshing the containers"
}
}
},
"addToHomarr": {
"label": "Add to Homarr",
"notification": {
"success": {
"title": "Added to Homarr",
"message": "Selected apps have been added to Homarr"
},
"error": {
"title": "Could not add to Homarr",
"message": "Selected apps could not be added to Homarr"
}
},
"modal": {
"title": "Add docker container(-s) to Homarr"
}
}
},
"error": {
"internalServerError": "Failed to fetch Docker containers",
"noColumns": "Select at least one column in the widget settings"
}
},
"kubernetes": {
"cluster": {
"title": "Cluster Dashboard",
"label": "Cluster",
"providers": "Providers",
"version": "Version",
"architecture": "Architecture",
"capacity": {
"title": "Capacity",
"resource": {
"reserved": "Reserved",
"used": "Used"
}
},
"resources": {
"title": "Resources",
"nodes": "Nodes",
"namespaces": "Namespaces",
"ingresses": "Ingresses",
"services": "Services",
"pods": "Pods",
"configmaps": "ConfigMaps",
"secrets": "Secrets",
"volumes": "Volumes"
}
},
"nodes": {
"label": "Nodes",
"field": {
"name": {
"label": "Name"
},
"state": {
"label": "State",
"option": {
"ready": "Ready",
"NotReady": "Not Ready"
}
},
"cpu": {
"label": "CPU"
},
"memory": {
"label": "RAM"
},
"pods": {
"label": "Pods"
},
"operatingSystem": {
"label": "OS"
},
"architecture": {
"label": "Architecture"
},
"kubernetesVersion": {
"label": "Kubernetes version"
},
"creationTimestamp": {
"label": "Created"
}
},
"table": {
"search": "Search {count} nodes"
}
},
"namespaces": {
"label": "Namespaces",
"field": {
"name": {
"label": "Name"
},
"state": {
"label": "State",
"option": {
"active": "Active",
"terminating": "Terminating"
}
},
"creationTimestamp": {
"label": "Created"
}
},
"table": {
"search": "Search {count} namespaces"
}
},
"ingresses": {
"label": "Ingresses",
"field": {
"name": {
"label": "Name"
},
"namespace": {
"label": "Namespace"
},
"className": {
"label": "Class name"
},
"rulesAndPaths": {
"label": "Rules & paths"
},
"creationTimestamp": {
"label": "Created"
}
},
"table": {
"search": "Search {count} ingresses"
}
},
"services": {
"label": "Services",
"field": {
"name": {
"label": "Name"
},
"namespace": {
"label": "Namespace"
},
"type": {
"label": "Type"
},
"ports": {
"label": "Ports"
},
"targetPorts": {
"label": "Target ports"
},
"clusterIP": {
"label": "Cluster IP"
},
"creationTimestamp": {
"label": "Created"
}
},
"table": {
"search": "Search {count} services"
}
},
"pods": {
"label": "Pods",
"field": {
"name": {
"label": "Name"
},
"namespace": {
"label": "Namespace"
},
"image": {
"label": "Image"
},
"applicationType": {
"label": "Application type"
},
"status": {
"label": "Status"
},
"creationTimestamp": {
"label": "Created"
}
},
"table": {
"search": "Search {count} pods"
}
},
"secrets": {
"label": "Secrets",
"field": {
"name": {
"label": "Name"
},
"namespace": {
"label": "namespace"
},
"type": {
"label": "type"
},
"creationTimestamp": {
"label": "Created"
}
},
"table": {
"search": "Search {count} secrets"
}
},
"configmaps": {
"label": "ConfigMaps",
"field": {
"name": {
"label": "Name"
},
"namespace": {
"label": "namespace"
},
"creationTimestamp": {
"label": "Created"
}
},
"table": {
"search": "Search {count} configMaps"
}
},
"volumes": {
"label": "Volumes",
"field": {
"name": {
"label": "Name"
},
"namespace": {
"label": "Namespace"
},
"accessModes": {
"label": "Access Modes"
},
"storage": {
"label": "Storage"
},
"storageClassName": {
"label": "Storage Class Name"
},
"volumeMode": {
"label": "Volume Mode"
},
"volumeName": {
"label": "Volume Name"
},
"status": {
"label": "Status"
},
"creationTimestamp": {
"label": "Created"
}
},
"table": {
"search": "Search {count} volumes"
}
},
"error": {
"internalServerError": "Failed to fetch Kubernetes data"
}
},
"permission": {
"title": "Permissions",
"userSelect": {
"title": "Add user permission"
},
"groupSelect": {
"title": "Add group permission"
},
"tab": {
"user": "Users",
"group": "Groups",
"inherited": "Inherited groups"
},
"field": {
"user": {
"label": "User"
},
"group": {
"label": "Group"
},
"permission": {
"label": "Permission"
}
},
"action": {
"saveUser": "Save user permission",
"saveGroup": "Save group permission"
}
},
"navigationStructure": {
"manage": {
"label": "Manage",
"boards": {
"label": "Boards"
},
"integrations": {
"label": "Integrations",
"edit": {
"label": "Edit"
},
"new": {
"label": "New"
}
},
"search-engines": {
"label": "Search engines",
"new": {
"label": "New"
},
"edit": {
"label": "Edit"
}
},
"medias": {
"label": "Medias"
},
"apps": {
"label": "Apps",
"new": {
"label": "New"
},
"edit": {
"label": "Edit"
}
},
"custom-widgets": {
"label": "Custom widgets",
"new": {
"label": "New"
},
"edit": {
"label": "Edit",
"flow": {
"label": "Flow"
}
}
},
"users": {
"label": "Users",
"create": {
"label": "Create"
},
"general": "General",
"security": "Security",
"board": "Boards",
"groups": {
"label": "Groups"
},
"invites": {
"label": "Invites"
}
},
"tools": {
"label": "Tools",
"tasks": {
"label": "Tasks"
},
"docker": {
"label": "Docker",
"logs": {
"label": "Logs"
}
},
"kubernetes": {
"label": "Kubernetes",
"nodes": {
"label": "Nodes"
},
"namespaces": {
"label": "Namespaces"
},
"ingresses": {
"label": "Ingresses"
},
"services": {
"label": "Services"
},
"pods": {
"label": "pods"
},
"configmaps": {
"label": "ConfigMaps"
},
"secrets": {
"label": "Secrets"
},
"volumes": {
"label": "Volumes"
}
},
"logs": {
"label": "Logs"
},
"certificates": {
"label": "Certificates",
"hostnames": {
"label": "Hostnames"
}
}
},
"settings": {
"label": "Settings"
},
"about": {
"label": "About"
}
}
},
"search": {
"placeholder": "Search for anything",
"nothingFound": "Nothing found",
"error": {
"fetch": "An error occurred while fetching data"
},
"mode": {
"appIntegrationBoard": {
"help": "Search for apps, integrations or boards",
"group": {
"app": {
"title": "Apps",
"children": {
"action": {
"open": {
"label": "Open app url"
},
"edit": {
"label": "Edit app"
}
},
"detail": {
"title": "Select an action for the app"
}
}
},
"board": {
"title": "Boards",
"children": {
"action": {
"open": {
"label": "Open board"
},
"homeBoard": {
"label": "Set as home board"
},
"mobileBoard": {
"label": "Set as mobile board"
},
"settings": {
"label": "Open settings"
}
},
"detail": {
"title": "Select an action for the board"
}
}
},
"integration": {
"title": "Integrations"
}
}
},
"command": {
"help": "Activate command mode",
"group": {
"localCommand": {
"title": "Local commands"
},
"globalCommand": {
"title": "Global commands",
"option": {
"colorScheme": {
"auto": "Toggle appearance mode",
"light": "Switch to light mode",
"dark": "Switch to dark mode"
},
"language": {
"label": "Change language",
"children": {
"detail": {
"title": "Select your prefered language"
}
}
},
"newBoard": {
"label": "Create a new board"
},
"importBoard": {
"label": "Import a board"
},
"newApp": {
"label": "Create a new app"
},
"newIntegration": {
"label": "Create a new integration",
"children": {
"detail": {
"title": "Select the integration type you want to create"
}
}
},
"newUser": {
"label": "Create a new user"
},
"newInvite": {
"label": "Create a new invite"
},
"newGroup": {
"label": "Create a new group"
}
}
},
"preferences": {
"title": "Preferences",
"children": {
"detail": {
"title": "Select a preference to change",
"backHint": "Press Backspace or use the back button to go back",
"backAction": "Go back"
}
},
"notification": {
"error": {
"message": "Unable to update preference"
}
},
"option": {
"preferences": {
"label": "Open preferences"
},
"boolean": {
"enabled": "Enabled",
"disabled": "Disabled"
},
"board": {
"none": "None",
"unavailable": "Currently selected (unavailable)"
},
"searchEngine": {
"none": "None",
"unavailable": "Currently selected (unavailable)"
},
"colorScheme": {
"label": "Color scheme",
"children": {
"detail": {
"title": "Select your color scheme"
}
}
},
"locale": {
"label": "Language",
"children": {
"detail": {
"title": "Select your preferred language"
}
}
},
"defaultSearchEngineId": {
"label": "Default search engine",
"children": {
"detail": {
"title": "Select your default search engine"
}
}
},
"openSearchInNewTab": {
"label": "Open search results in new tab",
"children": {
"detail": {
"title": "Open search results in new tab"
}
}
},
"ddgBangs": {
"label": "Enable DuckDuckGo bangs",
"children": {
"detail": {
"title": "Enable DuckDuckGo bangs"
}
}
},
"firstDayOfWeek": {
"label": "First day of the week",
"children": {
"detail": {
"title": "Select the first day of the week"
}
}
},
"homeBoardId": {
"label": "Home board",
"children": {
"detail": {
"title": "Select your home board"
}
}
},
"mobileHomeBoardId": {
"label": "Mobile home board",
"children": {
"detail": {
"title": "Select your mobile home board"
}
}
},
"pingIconsEnabled": {
"label": "Use icons for pings",
"children": {
"detail": {
"title": "Use icons for pings"
}
}
},
"enableRightClickOnWidgets": {
"label": "Enable right-click on widgets",
"children": {
"detail": {
"title": "Enable right-click on widgets"
}
}
},
"fullPreferencesPage": {
"label": "Open full preferences page"
}
}
}
}
},
"media": {
"help": "Search for movies or shows to request",
"requestMovie": "Request movie",
"requestSeries": "Request series",
"openIn": "Open in {kind}",
"group": {
"title": "Movies and shows"
},
"action": {
"search": {
"label": "Search for movies or shows",
"description": "Start typing to search your media request integrations",
"disabled": {
"noIntegration": "Add an Overseerr, Jellyseerr, or Seerr integration to enable media search.",
"scoped": "This widget does not have an accessible media request integration."
}
}
},
"availability": {
"available": "Available",
"partiallyAvailable": "Partial",
"processing": "Processing",
"requested": "Requested",
"pending": "Requested"
}
},
"external": {
"help": "Use an external search engine",
"group": {
"searchEngine": {
"title": "Search engines",
"tipDdgBangs": "Tip: You can use any DuckDuckGo bangs here as well, e.g. !something",
"bang": {
"searchWithQuery": "Search \"{query}\" with {label}",
"pressEnterToOpen": "Press Enter to open",
"engineSelected": "{label} selected (!{bang})",
"typeQueryToContinue": "Type your search query to continue",
"emptyBangHint": "Type a bang, e.g. !yt, then press Space to select"
},
"children": {
"action": {
"search": {
"label": "Search with {name}"
}
},
"detail": {
"title": "Select an action for the search engine"
},
"searchResults": {
"title": "Select a search result for actions"
}
},
"option": {
"google": {
"name": "Google",
"description": "Search the web with Google"
},
"bing": {
"name": "Bing",
"description": "Search the web with Bing"
},
"duckduckgo": {
"name": "DuckDuckGo",
"description": "Search the web with DuckDuckGo"
},
"torrent": {
"name": "Torrents",
"description": "Search for torrents on torrentdownloads.pro"
},
"youTube": {
"name": "YouTube",
"description": "Search for videos on YouTube"
}
}
}
}
},
"help": {
"group": {
"mode": {
"title": "Modes"
},
"help": {
"title": "Help",
"option": {
"documentation": {
"label": "Documentation"
},
"submitIssue": {
"label": "Submit an issue"
},
"discord": {
"label": "Community Discord"
}
}
}
}
},
"home": {
"group": {
"search": {
"title": "Search",
"option": {
"other": {
"label": "Search with another search engine"
},
"no-default": {
"label": "No default search engine",
"description": "Set a default search engine in preferences"
},
"search": {
"label": "Search for \"{query}\" with {name}"
},
"from-integration": {
"description": "Start typing to search"
}
}
},
"local": {
"title": "Local results"
}
}
},
"page": {
"help": "Search for pages",
"group": {
"page": {
"title": "Pages",
"option": {
"manageHome": {
"label": "Manage home page"
},
"manageBoard": {
"label": "Manage boards"
},
"manageApp": {
"label": "Manage apps"
},
"manageIntegration": {
"label": "Manage integrations"
},
"manageSearchEngine": {
"label": "Manage search engines"
},
"manageMedia": {
"label": "Manage medias"
},
"manageUser": {
"label": "Manage users"
},
"manageInvite": {
"label": "Manage invites"
},
"manageGroup": {
"label": "Manage groups"
},
"manageDocker": {
"label": "Manage docker"
},
"manageApi": {
"label": "Swagger API"
},
"manageLog": {
"label": "View logs"
},
"manageTask": {
"label": "Manage tasks"
},
"manageSettings": {
"label": "Global settings"
},
"about": {
"label": "About"
},
"homeBoard": {
"label": "Home board"
},
"preferences": {
"label": "Your preferences"
}
}
}
}
},
"userGroup": {
"help": "Search for users or groups",
"group": {
"user": {
"title": "Users",
"children": {
"action": {
"detail": {
"label": "Show user details"
}
},
"detail": {
"title": "Select an action for the user"
}
}
},
"group": {
"title": "Groups",
"children": {
"action": {
"detail": {
"label": "Show group details"
},
"manageMember": {
"label": "Manage members"
},
"managePermission": {
"label": "Manage permissions"
}
},
"detail": {
"title": "Select an action for the group"
}
}
}
}
}
},
"engine": {
"search": "Find a search engine",
"field": {
"name": {
"label": "Name"
},
"short": {
"label": "Short"
},
"urlTemplate": {
"label": "URL search template"
},
"description": {
"label": "Description"
}
},
"page": {
"list": {
"title": "Search engines",
"noResults": {
"title": "There are no search engines yet",
"action": "Create your first search engine"
},
"interactive": "Interactive, uses an integration"
},
"create": {
"title": "New search engine",
"notification": {
"success": {
"title": "Search engine created",
"message": "The search engine was created successfully"
},
"error": {
"title": "Search engine not created",
"message": "The search engine could not be created"
}
}
},
"edit": {
"title": "Edit search engine",
"notification": {
"success": {
"title": "Changes applied successfully",
"message": "The search engine was saved successfully"
},
"error": {
"title": "Unable to apply changes",
"message": "The search engine could not be saved"
}
},
"configControl": "Configuration",
"searchEngineType": {
"generic": "Generic",
"fromIntegration": "From integration"
}
},
"delete": {
"title": "Delete search engine",
"message": "Are you sure you want to delete the search engine {name}?",
"notification": {
"success": {
"title": "Search engine deleted",
"message": "The search engine was deleted successfully"
},
"error": {
"title": "Search engine not deleted",
"message": "The search engine could not be deleted"
}
}
}
},
"media": {
"request": {
"modal": {
"title": "Request \"{name}\"",
"table": {
"header": {
"season": "Season",
"episodes": "Episodes",
"status": "Status"
},
"status": {
"requested": "Requested"
}
},
"button": {
"send": "Send request"
}
}
}
}
}
},
"certificate": {
"field": {
"hostname": {
"label": "Hostname"
},
"subject": {
"label": "Subject"
},
"issuer": {
"label": "Issuer"
},
"validFrom": {
"label": "Valid from"
},
"validTo": {
"label": "Valid to"
},
"serialNumber": {
"label": "Serial number"
},
"fingerprint": {
"label": "Fingerprint"
}
},
"page": {
"list": {
"title": "Trusted certificates",
"description": "Used by Homarr to request data from integrations.",
"noResults": {
"title": "There are no certificates yet"
},
"invalid": {
"title": "Invalid certificate",
"description": "Failed to parse certificate"
},
"expires": "Expires {when}",
"toHostnames": "Trusted hostnames"
},
"hostnames": {
"title": "Trusted certificate hostnames",
"description": "Some certificates do not allow the specific domain Homarr uses to request them, because of this all trusted hostnames with their certificate thumbprints are used to bypass these restrictions.",
"noResults": {
"title": "There are no hostnames yet"
},
"toCertificates": "Certificates"
}
},
"action": {
"create": {
"label": "Add certificate",
"notification": {
"success": {
"title": "Certificate added",
"message": "The certificate was added successfully"
},
"error": {
"title": "Failed to add certificate",
"message": "The certificate could not be added"
}
}
},
"remove": {
"label": "Remove certificate",
"confirm": "Are you sure you want to remove the certificate?",
"notification": {
"success": {
"title": "Certificate removed",
"message": "The certificate was removed successfully"
},
"error": {
"title": "Certificate not removed",
"message": "The certificate could not be removed"
}
}
},
"removeHostname": {
"label": "Remove trusted hostname",
"confirm": "Are you sure you want to remove this trusted hostname? This can cause some integrations to stop working.",
"notification": {
"success": {
"title": "Hostname removed",
"message": "The hostname was removed successfully"
},
"error": {
"title": "Hostname not removed",
"message": "The hostname could not be removed"
}
}
}
}
},
"log": {
"level": {
"option": {
"debug": "Debug",
"info": "Info",
"warn": "Warn",
"error": "Error"
}
}
},
"onboardingTour": {
"learnMore": "Read the docs",
"next": "Next",
"prev": "Back",
"done": "Done",
"skip": "Skip tour",
"manage": {
"welcome": {
"title": "Welcome to Homarr!",
"description": "This is your control center. From here you manage boards, apps, integrations, users, and server settings. Let's take a tour of each section."
},
"boardsList": {
"title": "Your Boards",
"description": "Here are all your dashboards. Each board has its own layout, background, and access settings. You can see who created each one and whether it's public or private."
},
"boardsCreate": {
"title": "Create a Board",
"description": "Click here to create a new dashboard or import one from a previous Homarr installation. Each board gets its own URL you can share."
},
"appsList": {
"title": "Your Apps",
"description": "These are all the apps you've added — links to your self-hosted services. Each app has an icon, optional health check, and a status badge on the dashboard."
},
"appsCreate": {
"title": "Add an App",
"description": "Register a new service here. Give it a name, URL, and icon — it will appear as a tile on your boards with live status monitoring."
},
"integrationsList": {
"title": "Your Integrations",
"description": "These are the services connected to Homarr — Sonarr, Radarr, Plex, Jellyfin, and 50+ more. All credentials are encrypted at rest."
},
"integrationsCreate": {
"title": "Add an Integration",
"description": "Connect a new service here. Pick the type, enter the URL and API key — Homarr validates the connection before saving."
},
"usersList": {
"title": "Your Users",
"description": "See everyone who has access. Organize users into groups and control who can view or edit each board."
},
"usersCreate": {
"title": "Create a User",
"description": "Add a new user account here. You can also use invite links for easy onboarding. That's the tour — you're all set!"
}
},
"board": {
"welcome": {
"title": "This is your board",
"description": "A drag-and-drop dashboard where you arrange apps and widgets. Press Ctrl+K anytime to search for apps, boards, and actions."
},
"editMode": {
"title": "Edit Mode",
"description": "Click here to enter edit mode. You can then add widgets, apps, and sections — drag to reposition, resize with the corner handle. Click again to save your changes."
},
"settings": {
"title": "Board Settings",
"description": "Change this board's name, columns, background, colors, and who can access it. Each board can be public or private."
},
"switcher": {
"title": "Switch Boards",
"description": "Jump between boards. Create separate dashboards for different purposes — media, networking, per-user, or anything you like."
},
"userMenu": {
"title": "Your Profile",
"description": "Change your color scheme, language, home board, and preferences. You can also jump to the management area from here."
}
}
}
}