{ "common": { "cancel": "Cancel", "save": "Save", "close": "Close", "copy": "Copy", "copied": "Copied", "copiedBang": "Copied!", "loading": "Loading...", "retry": "Retry", "refresh": "Refresh", "install": "Install", "installing": "Installing...", "uninstall": "Uninstall", "uninstalling": "Uninstalling...", "start": "Start", "stop": "Stop", "restart": "Restart", "launch": "Launch", "starting": "Starting...", "stopping": "Stopping...", "update": "Update", "updating": "Updating...", "send": "Send", "sending": "Sending...", "back": "Back", "done": "Done", "manage": "Manage", "connect": "Connect", "connecting": "Connecting...", "disconnect": "Disconnect", "running": "running", "stopped": "stopped", "exited": "exited", "healthy": "Healthy", "elevated": "Elevated", "critical": "Critical", "connected": "Connected", "disconnected": "Disconnected", "active": "Active", "inactive": "Inactive", "synced": "Synced", "enabled": "Enabled", "disabled": "Disabled", "dismiss": "Dismiss", "apply": "Apply", "configure": "Configure", "export": "Export", "delete": "Delete", "remove": "Remove", "error": "Error", "version": "Version", "status": "Status", "category": "Category", "developer": "Developer", "license": "License", "never": "Never", "notAvailable": "Not Available", "goBack": "Go back", "skipToContent": "Skip to main content", "continue": "Continue", "verify": "Verify", "create": "Create", "restore": "Restore", "disabling": "Disabling...", "creating": "Creating...", "restoring": "Restoring...", "manageUpdates": "Manage Updates", "enableAll": "Enable All", "networkDiagnostics": "Network Diagnostics", "network": "Network", "saveConfiguration": "Save Configuration", "sendTest": "Send Test" }, "login": { "title": "Welcome to Archipelago", "setupTitle": "Set Up Your Node", "twoFactorTitle": "Two-Factor Authentication", "password": "Password", "confirmPassword": "Confirm Password", "enterPasswordPlaceholder": "Enter your password", "enterPasswordSetup": "Enter a password (min 8 characters)", "confirmPasswordPlaceholder": "Confirm your password", "setupButton": "Set Up Node", "settingUp": "Setting up...", "loginButton": "Login", "loggingIn": "Logging in...", "verifyButton": "Verify", "verifying": "Verifying...", "useAuthCode": "Use authenticator code", "useBackupCode": "Use a backup code instead", "totpInstruction": "Enter the 6-digit code from your authenticator app", "totpPlaceholder": "000000", "backupCodePlaceholder": "XXXX-XXXX", "serverStarting": "Server starting up...", "replayIntro": "Replay Intro", "onboarding": "Onboarding", "resetting": "Resetting...", "recoveryNote": "Password recovery requires SSH access to the server.", "errorMinLength": "Password must be at least 8 characters", "errorMismatch": "Passwords do not match", "errorServerStarting": "Server is starting up. Please try again in a moment.", "errorSetupFailed": "Setup failed. Please try again.", "errorLoginFailed": "Login failed. Please check your password.", "errorInvalidCode": "Invalid code. Please try again.", "totpLabel": "Two-factor authentication code" }, "home": { "title": "Welcome Noderunner", "subtitle": "Here's an overview of your sovereign life", "dashboardTab": "Dashboard", "setupTab": "Setup", "myApps": "My Apps", "myAppsDesc": "Manage your installed applications", "recommendedApps": "Recommended Apps", "recommendedAppsDesc": "Add useful App Store apps to your Home screen", "cloud": "Cloud", "cloudDesc": "Cloud services and storage", "network": "Network", "networkDesc": "Network infrastructure and mesh services", "web5": "Web5", "web5Desc": "Decentralized identity and data protocols", "system": "System", "quickStartGoals": "Quick Start Goals", "quickStartDesc": "Not sure where to start? Try a guided setup.", "installed": "Installed", "runningLabel": "Running", "storageUsed": "Storage Used", "folders": "Folders", "servicesStatus": "Services Status", "connectivity": "Connectivity", "runningApps": "Running Apps", "didStatus": "DID Status", "dwnSync": "DWN Sync", "credentials": "Credentials", "cpu": "CPU", "ram": "RAM", "disk": "Disk", "browseStore": "Browse Store", "manageApps": "Manage Apps", "viewFolders": "View Folders", "uploadFiles": "Upload Files", "manageNetwork": "Manage Network", "manageWeb5": "Manage Web5", "openAI": "Open AI Assistant", "noApps": "No Apps", "allRunning": "All Running", "systemMonitoring": "System monitoring", "updateAvailable": "Update Available: v{version}", "updateNow": "Update Now", "goToApps": "Go to Apps", "goToAppStore": "Go to App Store", "goToCloud": "Go to Cloud", "goToNetwork": "Go to Network", "goToWeb5": "Go to Web5", "goToSettings": "Go to Settings" }, "apps": { "title": "My Apps", "subtitle": "Manage your installed applications", "searchPlaceholder": "Search installed apps...", "noAppsTitle": "No Apps Installed", "noAppsMessage": "Get started by browsing the app store", "browseAppStore": "Browse App Store", "noResults": "No apps matching \"{query}\"", "uninstallTitle": "Uninstall App?", "uninstallConfirm": "Are you sure you want to uninstall {name}? This will remove the app and stop its container.", "deleteAppDataLabel": "Delete app data and reset it", "deleteAppDataHelp": "Check this to remove the app's data, backups, and persistent files. Leave it off to reinstall later without starting over.", "dismissError": "Dismiss error", "searchLabel": "Search installed apps" }, "settings": { "title": "Settings", "subtitle": "Configure your Archipelago experience", "account": "Account", "interfaceMode": "Interface Mode", "claudeAuth": "Claude Authentication", "aiDataAccess": "AI Data Access", "serverName": "Hostname", "sessionStatus": "Session Status", "yourDid": "Your DID", "onionAddress": "Node .onion Address", "loggedIn": "Currently logged in", "didHelper": "Decentralized identifier for passwordless auth", "onionHelper": "Onion address for node interface and peer discovery over Tor", "changePassword": "Set Password", "enable2fa": "Enable 2FA", "disable2fa": "Disable 2FA", "logout": "Logout", "loggingOut": "Logging out...", "twoFactorAuth": "Two-Factor Authentication", "twoFaProtect": "Protect your account with an authenticator app", "changePasswordTitle": "Set Password", "changePasswordDesc": "Set a new password for web login and SSH access. Default password is 'password123'. Use a strong password (12+ chars, upper, lower, digit, special).", "currentPassword": "Current Password", "newPassword": "New Password", "confirmNewPassword": "Confirm New Password", "passwordPlaceholder": "12+ chars, upper, lower, digit, special", "updateSshCheckbox": "Also update SSH password (recommended)", "updatePassword": "Update Password", "updatingPassword": "Updating...", "setup2faTitle": "Two-Factor Authentication", "setup2faPasswordPrompt": "Enter your password to begin setup.", "scanQrCode": "Scan QR Code", "scanQrInstruction": "Scan this QR code with your authenticator app (Google Authenticator, Authy, etc.), then enter the 6-digit code.", "manualEntryKey": "Manual entry key:", "verifyAndEnable": "Verify & Enable", "saveBackupCodes": "Save Your Backup Codes", "backupCodesInstruction": "Store these codes safely. Each can be used once if you lose access to your authenticator app.", "copyAllCodes": "Copy All Codes", "disable2faTitle": "Disable Two-Factor Authentication", "disable2faDesc": "Enter your password and a current TOTP code to disable 2FA.", "authenticatorCode": "Authenticator Code", "webhooks": "Webhooks", "webhooksDesc": "Get notified when important events happen on your node", "webhookUrl": "Webhook URL", "webhookUrlPlaceholder": "https://example.com/webhook", "webhookSecret": "Secret (for HMAC signing)", "webhookSecretPlaceholder": "Optional shared secret", "webhookEvents": "Events", "containerCrash": "Container Crash", "updateAvailableEvent": "Update Available", "diskWarning": "Disk Warning", "backupComplete": "Backup Complete", "saveWebhook": "Save", "savingWebhook": "Saving...", "testWebhook": "Test", "testingWebhook": "Testing...", "webhookSaved": "Webhook configuration saved", "webhookTestSent": "Test webhook sent successfully", "systemUpdates": "System Updates", "backup": "Backup & Restore", "backupDesc": "Back up your node data to external storage", "createBackup": "Create Backup", "creatingBackup": "Creating...", "restoreBackup": "Restore Backup", "deleteBackup": "Delete backup", "backupCreated": "Backup created successfully", "sendMessage": "Send Message", "sendMessageTitle": "Send Broadcast Message", "messagePlaceholder": "Enter your message...", "messageSent": "Message sent", "claudeConnected": "Connected to Claude", "claudeDisconnected": "Not connected", "claudeApiKey": "API Key", "claudeApiKeyPlaceholder": "Enter your Anthropic API key", "claudeSave": "Save Key", "advancedMode": "Advanced Mode", "beginnerMode": "Beginner Mode", "advancedModeDesc": "Show all system controls and developer tools", "beginnerModeDesc": "Simplified interface with guided experience", "networkSettings": "Network Settings", "torEnabled": "Tor Enabled", "torAddress": "Tor Address", "interfaceModeDesc": "Choose how you want to interact with your node.", "claudeAuthDesc": "Connect your Claude Max account to enable AI chat features.", "connectionStatus": "Connection Status", "notConnected": "Not connected", "reAuthenticate": "Re-authenticate", "loginWithClaude": "Login with Claude", "aiDataAccessDesc": "Control what data the AI assistant can see. All categories are off by default.", "enableAllDesc": "Grant access to all data categories at once", "systemUpdatesDesc": "Check for and install software updates", "webhookNotifications": "Webhook Notifications", "webhookNotificationsDesc": "Get push notifications for critical events via webhook", "enableWebhooks": "Enable webhooks", "disableWebhooks": "Disable webhooks", "webhookUrlLabel": "Webhook URL", "webhookSecretLabel": "Secret (optional, for HMAC-SHA256 signing)", "eventsToNotify": "Events to notify", "containerCrashDesc": "A running container stops unexpectedly", "updateAvailableDesc": "A new system or app update is ready", "diskWarningDesc": "Disk usage exceeds warning threshold", "backupCompleteDesc": "A scheduled or manual backup finishes", "backupRestoreDesc": "Encrypted backups of your identity, settings, and data", "loadingBackups": "Loading backups...", "noBackups": "No backups yet. Create one to protect your node data.", "systemBackup": "System Backup", "createEncryptedBackup": "Create Encrypted Backup", "encryptionPassphrase": "Encryption Passphrase", "enterPassphrase": "Enter a strong passphrase", "descriptionOptional": "Description (optional)", "descriptionPlaceholder": "e.g. Before update", "restoreBackupTitle": "Restore Backup", "restoreWarning": "This will overwrite current node data. Make sure you have the correct passphrase.", "enterBackupPassphrase": "Enter backup passphrase", "networkDesc": "Network connectivity, UPnP, and diagnostics", "webhookSecretPlaceholderFull": "Shared secret for payload signing", "backupCreatedSuccess": "Backup created successfully", "backupCreateFailed": "Failed to create backup", "backupVerifiedOk": "Backup verified — integrity OK", "backupVerifyFailed": "Verification failed: {error}", "backupVerifyRequestFailed": "Verification request failed", "backupRestored": "Backup restored. Restart may be needed.", "backupRestoreFailed": "Restore failed — check passphrase", "backupDeleted": "Backup deleted", "backupDeleteFailed": "Failed to delete backup", "noUsbDrives": "No mounted USB drives found. Insert and mount a USB drive first.", "backupCopiedToUsb": "Backup copied to {path}", "backupUsbFailed": "Failed to copy backup to USB", "deleteBackupConfirm": "Delete this backup permanently?", "verifyPassphrasePrompt": "Enter backup passphrase to verify:", "webhookSaveFailed": "Failed to save webhook configuration", "webhookTestFailed": "Test failed: webhook not sent", "webhookSendFailed": "Failed to send test webhook", "passwordAllFieldsRequired": "All fields are required", "passwordMismatch": "New passwords do not match", "passwordUpdatedSuccess": "Web password updated successfully.", "passwordUpdatedSshFailed": "SSH password update failed:", "passwordChangeFailed": "Failed to change password", "passwordMinLength": "Password must be at least 12 characters", "passwordNeedUppercase": "Password must contain at least one uppercase letter", "passwordNeedLowercase": "Password must contain at least one lowercase letter", "passwordNeedDigit": "Password must contain at least one digit", "passwordNeedSpecial": "Password must contain at least one special character (!@#$%^&* etc.)", "setupFailed": "Setup failed", "verificationFailed": "Verification failed", "disableFailed": "Failed to disable 2FA", "copyToUsb": "Copy to USB", "diskSpaceWarning": "Disk Space Warning", "modeEasy": "Easy", "modeEasyDesc": "Goal-based interface. Choose what you want to do, and the system handles the rest.", "modePro": "Pro", "modeProDesc": "Full control over all services. Configure everything manually with all technical details.", "modeChat": "AIUI", "modeChatDesc": "Conversational AI interface. Manage your node through natural language. Coming soon." }, "marketplace": { "title": "App Store", "subtitle": "Discover and install apps for your new sovereign life", "curatedTab": "Curated", "communityTab": "Community", "nostrCommunityTab": "Nostr Community", "filterByCategory": "Filter by Category", "searchPlaceholder": "Search apps...", "downloading": "Downloading...", "alreadyInstalled": "Already Installed", "queryingRelays": "Querying Nostr relays for apps...", "noCommunityApps": "No community apps discovered yet.", "noResults": "No apps found in {category} matching \"{query}\"", "noResultsCategory": "No apps found in {category}", "noResultsSearch": "No apps matching \"{query}\"", "all": "All", "community": "Community", "commerce": "Commerce", "money": "Money", "data": "Data", "homeCategory": "Home", "auto": "Auto", "networking": "Networking", "other": "Other", "searchApps": "Search apps", "percentComplete": "{percent}% complete" }, "dashboard": { "mainNav": "Main navigation", "mobileNav": "Mobile navigation" }, "chat": { "close": "Close", "aiuiConnected": "AIUI connected", "closeAssistant": "Close AI Assistant", "loadingAssistant": "Loading AI assistant...", "aiAssistant": "AI Assistant", "notConfigured": "AI Assistant needs to be enabled before use.", "deployCta": "Go to Settings to configure your AI provider API key, then return here to start chatting." }, "web5": { "title": "Web5", "subtitle": "Decentralized identity and data protocols", "profitsHelper": "Earn networking profits by hosting decentralized services", "networkingProfits": "Networking Profits", "didStatus": "DID Status", "walletConnection": "Wallet Connection", "wallet": "Wallet", "walletSubtitle": "On-chain, Lightning & Ecash", "nostrRelays": "Nostr Relays", "connectedNodes": "Connected Nodes", "bitcoinDomains": "Bitcoin Domain Names", "domainsSubtitle": "NIP-05 verified identities", "copyDid": "Copy", "viewDidDocument": "View", "createDid": "Create DID", "creatingDid": "Creating...", "manageDomains": "Manage Domains", "relaysConnected": "{count} connected", "peersKnown": "{count} peer(s) known", "findNodes": "Find Nodes", "sendMessage": "Send Message", "sendMessageTitle": "Send Message (over Tor)", "to": "To", "selectPeer": "Select a peer...", "message": "Message", "messagePlaceholder": "Type your message...", "didDocument": "DID Document", "addContent": "Add Content", "addContentTitle": "Add Content", "createIdentity": "Create Identity", "createIdentityTitle": "Create Identity", "deleteIdentity": "Delete Identity", "deleteIdentityTitle": "Delete Identity", "sendBitcoin": "Send Bitcoin", "sendBitcoinTitle": "Send Bitcoin", "receiveBitcoin": "Receive Bitcoin", "receiveBitcoinTitle": "Receive Bitcoin", "domains": "Domains", "domainsTitle": "Domains", "relays": "Relays", "relaysTitle": "Relays", "totalEarned": "Total Earned", "monthlyAvg": "Monthly Avg", "ecashBalance": "Ecash Balance", "onChain": "On-chain", "lightning": "Lightning", "ecash": "Ecash", "identityName": "Identity Name", "identityNamePlaceholder": "Enter identity name", "contentTitle": "Title", "contentTitlePlaceholder": "Enter content title", "amount": "Amount", "amountPlaceholder": "Enter amount in sats", "address": "Address", "addressPlaceholder": "Enter Bitcoin address", "deleteIdentityConfirm": "Are you sure you want to delete this identity? This action cannot be undone.", "confirm": "Confirm", "noRelays": "No relays connected", "noDomains": "No domains configured", "addRelay": "Add Relay", "addDomain": "Add Domain", "relayUrl": "Relay URL", "relayUrlPlaceholder": "wss://relay.example.com", "domainName": "Domain Name", "domainNamePlaceholder": "user{'@'}example.com", "peerNodesDescription": "Peer nodes discovered via Nostr. Messages sent over Tor.", "nodeVisibility": "Node Visibility", "nodeVisibilityDesc": "Control how other nodes can discover you", "yourTorAddress": "Your Tor address", "discoverableWarning": "Making your node discoverable lets other Archipelago users find and connect with you.", "noPeers": "No peers yet. Add a peer manually or use Discover to find nodes on Nostr.", "noMessages": "No messages yet. Messages from peers will appear here.", "noRequests": "No pending connection requests.", "accept": "Accept", "reject": "Reject", "discovering": "Discovering...", "discoverNodes": "Discover Nodes on Nostr", "refreshMessages": "Refresh Messages", "refreshRequests": "Refresh Requests", "torServices": "Tor Services", "torServicesDesc": "Hidden services exposing your apps over Tor", "noTorServices": "No Tor hidden services configured.", "content": "Content", "contentDesc": "Share and browse content with peers over Tor", "noSharedContent": "No shared content", "addFilesToShare": "Add files to share with connected peers.", "browse": "Browse", "connectingToPeer": "Connecting to peer over Tor...", "selectPeerToBrowse": "Select a peer to browse", "choosePeerDesc": "Choose a connected peer to see their shared content.", "peerNoContent": "This peer has no shared content.", "identities": "Identities", "identitiesDesc": "Sovereign digital identities (DID:key)", "noIdentities": "No identities yet", "createFirstIdentity": "Create your first sovereign digital identity.", "deleting": "Deleting...", "syncing": "Syncing...", "syncNow": "Sync Now", "verifiableCredentials": "Verifiable Credentials", "verifiableCredentialsDesc": "Issue and manage W3C Verifiable Credentials", "noCredentials": "No credentials issued yet", "messageSent": "Message sent over Tor!", "failedToSend": "Failed to send", "pasteInvoice": "Paste a Lightning invoice (BOLT11)", "enterBitcoinAddress": "Enter a Bitcoin address", "sendFailed": "Send failed", "broadcastViaHwWallet": "Broadcast via hardware wallet", "broadcastFailed": "Broadcast failed", "psbtCopied": "PSBT copied!", "enterAmount": "Enter an amount", "pasteEcashToken": "Paste an ecash token", "receiveFailed": "Receive failed", "ecashTokenCopied": "Ecash token copied", "contentAdded": "Content added", "failedToAddContent": "Failed to add content", "contentRemoved": "Content removed", "failedToRemoveContent": "Failed to remove content", "failedToUpdatePricing": "Failed to update pricing", "failedToUpdatePrice": "Failed to update price", "failedToConnectPeer": "Failed to connect to peer", "onionAddressCopied": "Onion address copied", "streamUrlCopied": "Stream URL copied", "playerError": "Unable to load media. The content may only be accessible over Tor.", "connectionAccepted": "Connection accepted", "failedToAcceptRequest": "Failed to accept request", "requestRejected": "Request rejected", "failedToRejectRequest": "Failed to reject request", "visibilitySetTo": "Visibility set to {level}", "failedToUpdateVisibility": "Failed to update visibility", "didCopied": "DID copied to clipboard", "defaultIdentityUpdated": "Default identity updated", "failedToSetDefault": "Failed to set default", "identityCreated": "Identity created", "failedToCreateIdentity": "Failed to create identity", "identityDeleted": "Identity deleted", "failedToDeleteIdentity": "Failed to delete identity", "registrationFailed": "Registration failed", "removeFailed": "Remove failed", "failedToAddRelay": "Failed to add relay", "failedToRemoveRelay": "Failed to remove relay", "failedToToggleRelay": "Failed to toggle relay", "downloadUrlCopied": "Download URL copied", "hardwareWalletDetected": "Hardware Wallet Detected", "namesRegistered": "Names Registered", "expiringSoon": "Expiring Soon", "nostrRelaysDesc": "Decentralized social networking relays", "relaysConnectedLabel": "Relays Connected", "totalRelays": "Total Relays", "freeAccessDesc": "Available to all peers for free", "peersOnlyAccessDesc": "Available only to connected peers", "signWithHwWallet": "Sign with Hardware Wallet", "createsPsbt": "Creates a PSBT for external signing", "generateFreshAddress": "Generate a fresh Bitcoin address", "registerNewName": "Register New Name", "verifyNip05": "Verify NIP-05", "peers": "Peers", "trusted": "Trusted", "observer": "Observer", "observers": "Observers", "noObservers": "No observers yet.", "messages": "Messages", "requests": "Requests", "myContent": "My Content", "browsePeers": "Browse Peers", "verified": "Verified", "invalid": "Invalid", "stream": "Stream", "download": "Download" }, "appDetails": { "backToApps": "Back to My Apps", "backToStore": "Back to App Store", "screenshots": "Screenshots", "screenshotPlaceholder": "Screenshot placeholders - images coming soon", "about": "About {name}", "features": "Features", "information": "Information", "requirements": "Requirements", "setupInstructions": "Setup Instructions", "ram": "RAM", "ramDesc": "Minimum 512MB", "storage": "Storage", "storageDesc": "~100MB", "links": "Links", "website": "Website", "sourceCode": "Source Code", "documentation": "Documentation", "services": "Services", "guardian": "Guardian", "gateway": "Gateway", "access": "Access", "lan": "LAN", "tor": "Tor", "requiresTor": "Requires Tor Browser", "channels": "Channels", "uninstallTitle": "Uninstall App?", "uninstallConfirm": "Are you sure you want to uninstall {name}? This will remove the app and stop its container.", "notFoundTitle": "App Not Found", "notFoundMessage": "The requested application could not be found", "installed": "Installed", "channels": "Channels", "noLaunchUrl": "No launch URL available for this app yet" }, "containerDetails": { "back": "Back", "subtitle": "Container details and management", "containerInfo": "Container Information", "actions": "Actions", "logs": "Logs", "containerId": "Container ID", "image": "Image", "state": "State", "created": "Created", "startContainer": "Start Container", "stopContainer": "Stop Container", "loadingLogs": "Loading logs...", "noLogs": "No logs available" }, "marketplaceDetails": { "backToStore": "Back to App Store", "backToHome": "Back to Home", "screenshots": "Screenshots", "screenshotPlaceholder": "Screenshot placeholders - images coming soon", "about": "About {name}", "features": "Features", "information": "Information", "requirements": "Requirements", "noRequirements": "No additional dependencies required", "installRequirements": "Install Requirements", "links": "Links", "downloadPackage": "Download Package", "installed": "Installed", "notInstalled": "Not Installed", "open": "Open", "loadingDetails": "Loading app details...", "notFoundTitle": "App Not Found", "notFoundMessage": "The requested application could not be found in the marketplace", "installFailed": "Installation Failed", "depRunning": "Running", "depStopped": "Installed but stopped", "depNotInstalled": "Not installed" }, "goalDetail": { "backToGoals": "Back to Goals", "notFound": "Goal not found.", "stepOf": "Step {current} of {total}", "notStarted": "Not Started", "inProgress": "In Progress", "completed": "Completed", "syncTitle": "Sovereignty takes a little patience", "syncMessage": "Your Bitcoin node is syncing the entire blockchain so you don't have to trust anyone else. This takes 2-3 days on first run. Meanwhile, you can explore your node, set up your identity, or back up your keys.", "installApp": "Install {name}", "openAndConfigure": "Open & Configure", "checkAndContinue": "Check & Continue", "iveDoneThis": "I've Done This", "complete": "Complete", "allSet": "All Set!", "goalReady": "{title} is ready to go.", "viewMyServices": "View My Services" }, "monitoring": { "title": "Monitoring", "subtitle": "Real-time system metrics and container resource usage", "cpuUsage": "CPU Usage (%)", "memoryUsage": "Memory Usage (%)", "networkIo": "Network I/O (bytes)", "rpcLatency": "RPC Latency (ms)", "alertHistory": "Alert History", "hideConfig": "Hide Config", "noAlerts": "No alerts fired", "containerResources": "Container Resources", "noContainerMetrics": "No container metrics available", "systemHealth": "System Health", "load": "Load:", "exportCsv": "Export CSV", "exportJson": "Export JSON", "diskUsage": "Disk Usage", "ramUsage": "RAM Usage", "containerCrash": "Container Crash", "rpcLatencySpike": "RPC Latency Spike", "sslCertExpiry": "SSL Cert Expiry", "refreshFooter": "Refreshing every 5 seconds", "wsConnections": "WS connections: {count}", "cpu": "CPU", "memory": "Memory", "network": "Network" }, "systemUpdate": { "title": "System Update", "subtitle": "Manage software updates for your Archipelago node", "currentSystem": "Current System", "updateAvailable": "Update Available", "upToDate": "System is up to date", "downloading": "Downloading Update...", "applying": "Applying Update...", "updateSchedule": "Update Schedule", "actions": "Actions", "lastChecked": "Last Checked", "new": "New", "changelog": "Changelog", "componentsToUpdate": "{count} component(s) to update", "manualOnly": "Manual Only", "manualOnlyDesc": "Never check automatically. You control when to check and install updates.", "dailyCheck": "Daily Check", "dailyCheckDesc": "Check for updates once per day. You decide when to install.", "autoApply": "Auto-Apply", "autoApplyDesc": "Check daily and automatically install updates at 3 AM. Service restarts as needed.", "downloadUpdate": "Download Update", "applyUpdate": "Install Update", "checkForUpdates": "Check for Updates", "checking": "Checking...", "rollback": "Rollback Available", "backToSettings": "Back to Settings", "percentComplete": "{percent}% complete", "applyWarning": "Installing components and restarting services. Do not power off.", "applyTitle": "Install Update?", "applyMessage": "The backend service will restart. This may take a moment.", "rollbackTitle": "Rollback Version?", "rollbackMessage": "This will restore the previous version. The backend service will restart.", "applyNow": "Install Now", "rollbackButton": "Rollback", "upToDateMessage": "Your system is up to date. No updates available. Your system is running the latest version.", "checkFailed": "Failed to check for updates. Check your internet connection.", "downloadSuccess": "Downloaded {count} component(s) ({size}MB)", "downloadFailed": "Download failed. Please try again.", "applySuccess": "Update applied. The service will restart momentarily.", "applyFailed": "Failed to apply update. You can try again or rollback.", "rollbackSuccess": "Rolled back to previous version. Service will restart.", "rollbackFailed": "Rollback failed.", "pullAndRebuild": "Pull & Rebuild", "finishingDownload": "Finishing download — verifying checksum…", "overlayApplying": "Installing update…", "overlayRestarting": "Restarting server…", "overlayReconnecting": "Reconnecting to the new version…", "overlayReady": "Update installed — reloading…", "overlayStalled": "Taking longer than expected", "overlayTarget": "Installing v{version}", "overlayReloadNow": "Reload now", "gitMethodHint": "This node builds from source. Update will git-pull, rebuild the backend and UI, then restart — takes a few minutes.", "gitApplyTitle": "Pull & Rebuild?", "gitApplyMessage": "Archipelago will pull the latest code, rebuild, and restart. This can take several minutes and the UI will be briefly unavailable.", "gitApplyStarted": "Update started. The backend will rebuild and restart — this can take a few minutes.", "cancelDownload": "Cancel Download", "cancelingDownload": "Canceling…", "cancelDownloadTitle": "Cancel Download?", "cancelDownloadConfirm": "This will stop the current download and discard the partial file. You can start again from scratch afterwards.", "cancelDownloadButton": "Cancel Download", "cancelDownloadSuccess": "Download canceled. You can try again.", "cancelDownloadFailed": "Failed to cancel download.", "downloadStalled": "Download appears stuck — try Cancel and start again." }, "kiosk": { "pressEsc": "Press ESC to exit", "online": "Online", "offline": "Offline", "escHint": "Press ESC to exit apps", "navHint": "Use arrow keys to navigate" }, "kioskRecovery": { "title": "Archipelago Recovery", "subtitle": "Kiosk failsafe — no authentication required", "serverAddress": "Server Address", "webUi": "Web UI: http://{address}", "scanForMobile": "Scan for mobile access", "backend": "Backend", "unreachable": "Unreachable", "containers": "Containers", "goToLogin": "Go to Login", "lastChecked": "Last checked: {time}" }, "receiveBitcoin": { "onChain": "On-Chain", "lightning": "Lightning", "ecash": "Ecash", "amountSats": "Amount (sats)", "memoOptional": "Memo (optional)", "memoPlaceholder": "Payment for...", "invoiceShareLabel": "Invoice (share with sender):", "yourBitcoinAddress": "Your Bitcoin address:", "pasteEcashToken": "Paste ecash token", "processing": "Processing...", "generateAddress": "Generate Address", "createInvoice": "Create Invoice", "receive": "Receive", "enterAnAmount": "Enter an amount", "pasteAnEcashToken": "Paste an ecash token", "tokenReceivedSuccess": "Token received successfully!" }, "sendBitcoin": { "onChain": "On-chain", "auto": "Auto", "lightning": "Lightning", "ecash": "Ecash", "autoMethodDesc": "Auto-selects method based on amount: ecash < 1k sats, Lightning 1k\u2013500k, on-chain > 500k", "amountSats": "Amount (sats)", "lightningInvoice": "Lightning Invoice (BOLT11)", "bitcoinAddress": "Bitcoin Address", "tokenShareLabel": "Token (share with recipient):", "sentTx": "Sent! TX: {txid}", "paidHash": "Paid! Hash: {hash}" }, "transactions": { "title": "Transactions", "noTransactionsYet": "No transactions yet", "unconfirmed": "Unconfirmed", "confirmations": "{count} conf", "justNow": "just now", "minutesAgo": "{count}m ago", "hoursAgo": "{count}h ago", "daysAgo": "{count}d ago" }, "easyHome": { "beginner": "Beginner", "intermediate": "Intermediate", "done": "Done", "inProgress": "In Progress", "start": "Start" } }