Add Amnezia Web Panel source with PostgreSQL 17 storage.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
orohi
2026-07-26 00:02:18 +03:00
co-authored by Cursor
parent ead1c64dd1
commit 8b70d51c87
50 changed files with 21713 additions and 0 deletions
+423
View File
@@ -0,0 +1,423 @@
{
"nav_servers": "Servers",
"nav_users": "Users",
"nav_settings": "Settings",
"nav_connections": "Connections",
"nav_logout": "Logout",
"theme_dark": "Dark",
"theme_light": "Light",
"back_to_servers": "← Back to servers",
"server_check": "Check",
"server_checking": "Checking...",
"protocols": "Protocols",
"install": "Install",
"uninstall": "Uninstall",
"run": "Running",
"stop": "Stopped",
"not_installed": "Not installed",
"installed": "Installed",
"add_server": "Add Server",
"no_servers": "No servers added",
"name": "Name",
"host": "Host",
"port": "Port",
"status": "Status",
"actions": "Actions",
"edit": "Edit",
"delete": "Delete",
"save": "Save",
"cancel": "Cancel",
"loading": "Loading...",
"copy": "Copy",
"download": "Download",
"config": "Configuration",
"qr_code": "QR code",
"vpn_key": "VPN key",
"clients": "Clients",
"traffic": "Traffic",
"limit": "Limit",
"manage": "Manage",
"no_protocols": "No protocols",
"add_server_desc": "Add your first VPN server to get started. You'll need SSH credentials to connect.",
"ssh_host": "Host / IP",
"ssh_port": "SSH Port",
"ssh_user": "User",
"ssh_password": "Password",
"ssh_key": "SSH Key",
"ssh_key_placeholder": "Private SSH Key",
"ssh_key_hint": "Paste the content of your id_rsa or id_ed25519 file",
"connect": "Connect",
"connecting": "Connecting...",
"server_added": "Server added successfully",
"server_deleted": "Server deleted",
"delete_confirm": "Are you sure you want to delete this server?",
"success": "Success",
"error": "Error",
"info": "Info",
"login_title": "Login to Panel",
"username": "Username",
"password": "Password",
"captcha": "Captcha",
"captcha_placeholder": "Enter characters from image",
"captcha_hint": "Click to refresh image",
"login": "Login",
"logging_in": "Logging in...",
"login_error": "Login failed",
"check_done": "Check complete",
"check_error": "Connection error",
"ssh_ok": "SSH Connection",
"docker_ok": "Docker",
"docker_not_installed": "Docker not installed",
"awg_desc": "A newer version of the protocol based on awg-go. Supports advanced obfuscation with S3, S4 parameters.",
"awg_legacy_desc": "Original AWG version based on WireGuard kernel. Compatible with older client versions.",
"xray_desc": "Modern protocol that masks traffic as regular web traffic (XTLS-Reality). Resistant to deep packet analysis.",
"wireguard_desc": "Standard and fastest VPN protocol. Supported natively on all modern OS, but easily detected by DPI.",
"not_checked": "Not checked",
"connections": "Connections",
"add": "Add",
"loading_connections": "Loading connections...",
"no_connections": "No connections",
"no_connections_desc": "Add your first connection to generate a VPN configuration",
"install_protocol": "Install protocol",
"port_default_hint": "Default port: 55424. Make sure it's not busy",
"port_xray_hint": "Default port: 443 (recommended for Xray). Make sure it's not taken by another web server.",
"reinstall": "Reinstall",
"uninstall_confirm": "Uninstall {}? All connections and configurations will be lost.",
"stop_container_confirm": "Stop container {}?",
"start_container_confirm": "Start container {}?",
"stopping": "Stopping",
"starting": "Starting",
"stopped": "stopped",
"started": "started",
"server_config": "Server configuration",
"add_connection": "Add connection",
"connection_name": "Connection name",
"connection_name_placeholder": "Example: iPhone, Laptop",
"assign_to_user": "Assign to user (optional)",
"no_assign": "— No assignment —",
"create": "Create",
"creating": "Creating...",
"connection_created": "Connection \"{}\" created",
"delete_connection_confirm": "Delete this connection? The configuration will stop working.",
"connection_deleted": "Connection deleted",
"config_tab": "📄 Config",
"vpn_key_tab": "🔑 VPN-key",
"qr_code_tab": "📱 QR-code",
"copy_config": "📋 Copy",
"download_conf": "⬇ Download .conf",
"copy_key": "📋 Copy key",
"vpn_link_hint": "Paste this link into the AmneziaVPN app for automatic configuration",
"qr_hint": "Scan the QR code in the AmneziaVPN app",
"no_data": "No data",
"start_btn": "▶ Start",
"stop_btn": "⏹ Stop",
"config_btn": "⚙️ Config",
"done": "Done",
"installing": "Installing...",
"start_install": "Starting installation...",
"check_docker": "Checking Docker...",
"prepare_host": "Preparing host...",
"build_container": "Building container...",
"install_success": "Protocol installed successfully!",
"install_error": "Installation error: ",
"qr_error": "Failed to generate QR code",
"users_title": "Users",
"search_placeholder": "Search by name, email or Telegram...",
"add_user": "Add User",
"prev_page": "← Back",
"next_page": "Next →",
"page_info": "Page {} of {}",
"loading_users": "Loading users...",
"nothing_found": "Nothing found",
"search_empty_desc": "Try changing your query or create a new user",
"username_label": "Username",
"password_label": "Password",
"role_label": "Role",
"role_user_desc": "User — view only own connections",
"role_support_desc": "Support — server management",
"role_admin_desc": "Admin — full access",
"tg_id_label": "Telegram ID (opt.)",
"email_label": "Email (opt.)",
"traffic_limit_label": "Traffic limit (GB) (opt., 0 = ∞)",
"expiration_date_label": "Expiration date",
"description_label": "Description (opt.)",
"auto_conn_title": "Automatic connection creation (optional)",
"server_label": "Server",
"no_create_conn": "— Do not create connection —",
"protocol_label": "Protocol",
"edit_user_title": "Edit user: {}",
"edit_user_tg": "Telegram ID (optional)",
"edit_user_email": "Email (optional)",
"edit_user_limit": "Traffic limit (GB) (0 = ∞)",
"new_password_hint": "New password (leave empty if no change needed)",
"op_type_label": "Operation type",
"create_new_conn": "Create new connection",
"link_existing_conn": "Link existing",
"select_existing_conn": "Select existing connection",
"existing_conn_hint": "Only connections not linked to users will be shown",
"conn_name_panel": "Connection name (in panel)",
"user_conns_title": "User connections",
"no_free_conns": "No free connections",
"linking": "Linking...",
"conn_linked": "Connection linked",
"enabling": "Enabling",
"disabling": "Disabling",
"user_enabled": "User enabled",
"user_disabled": "User disabled",
"delete_user_confirm": "Delete user? All their connections will be deleted.",
"share_access": "Share access",
"enable_public_access": "Enable public access",
"share_password_label": "Password (optional)",
"share_password_hint": "If set, user must enter it",
"public_link_label": "Public link",
"disabled": "Disabled",
"out_of": "Of",
"settings_title": "Panel Settings",
"appearance": "🎨 Appearance",
"title_label": "Title",
"logo_label": "Logo (Emoji or symbol)",
"subtitle_label": "Subtitle",
"captcha_title": "🔐 Captcha",
"enable_captcha": "Enable captcha (multicolorcaptcha)",
"telegram_bot_title": "🤖 Telegram Bot",
"bot_token_label": "Bot Token (from @BotFather)",
"bot_status": "Status",
"bot_running": "✅ Running",
"bot_stopped": "⏹ Stopped",
"bot_stop_btn": "⏹ Stop",
"bot_start_btn": "▶️ Start",
"bot_hint": "After changing the token, save the settings — the bot will restart automatically. Users must have a Telegram ID in their profile.",
"api_docs_title": "🔌 API Documentation",
"api_docs_hint": "Use these interfaces to explore the panel's API capabilities",
"tunnels_title": "Tunnels",
"local_server": "Local Server",
"tunnel_install_enable": "Install & Enable",
"tunnel_enable": "Enable Tunnel",
"tunnel_running": "Tunnel running",
"tunnel_stop": "Stop",
"tunnel_stopping": "Stopping...",
"tunnel_stopped": "Tunnel stopped",
"tunnel_delete": "Delete",
"tunnel_deleted": "Tunnel deleted",
"tunnel_delete_confirm": "Stop and delete this panel-managed tunnel binary?",
"tunnel_starting": "Starting tunnel...",
"tunnel_started": "Tunnel started",
"tunnel_waiting_url": "Tunnel started. Waiting for public URL...",
"tunnel_no_public_url": "Public URL will appear here after the tunnel starts.",
"tunnels_hint": "Quick tunnels expose this local panel to the internet. Keep admin credentials strong and share public URLs only with trusted users.",
"ngrok_authtoken_placeholder": "ngrok authtoken (optional for some accounts)",
"import_users_title": "📤 Import Users",
"import_source_label": "Import / Sync Source",
"remnawave_url_label": "Remnawave URL",
"api_key_label": "API Key",
"enable_sync": "Enable synchronization",
"sync_hint": "Users will be created, disabled, and deleted automatically based on Remnawave data",
"sync_now_btn": "🔄 Sync now",
"delete_sync_btn": "🗑 Delete synchronization",
"auto_create_conns": "Create connections automatically",
"sync_server_label": "Server for new connections",
"save_changes": "💾 Save changes",
"sync_success": "Sync completed: {} users",
"sync_deleted": "Deleted {} synced users",
"delete_sync_confirm": "Are you sure you want to delete ALL synced users and their connections? This action is irreversible.",
"settings_saved": "Settings saved successfully",
"bot_started": "Bot started",
"bot_stopped_msg": "Bot stopped",
"sync_running": "Syncing...",
"deleting": "Deleting...",
"my_connections_title": "My Connections",
"show_config": "📄 Show config",
"no_connections_user_desc": "Contact administrator to create a VPN connection",
"share_title": "Connection Access",
"vpn_access": "VPN Access",
"user_label_share": "User",
"share_protected_desc": "This access is password protected. Please enter it to continue.",
"auth_success": "Auth success",
"loading_share_conns": "Loading connections...",
"no_active_conns": "You have no active connections yet.",
"show_settings_btn": "🔑 Show settings",
"copied": "Copied!",
"active": "Active",
"site_description": "Amnezia Web Panel — management of VPN servers and protocols AmneziaWG",
"toggle_theme": "Change theme",
"copied_to_clipboard": "Copied to clipboard",
"share_not_found": "404 Not Found",
"share_not_found_desc": "Either the link is incorrect or access has been disabled.",
"invalid_captcha": "Invalid captcha",
"account_disabled": "Account disabled",
"invalid_login": "Invalid login or password",
"user_exists": "User with this name already exists",
"cannot_delete_self": "You cannot delete yourself",
"wrong_share_password": "Wrong password",
"saving": "Saving...",
"select_lang": "Select Language",
"lang_ru": "Русский",
"lang_en": "English",
"lang_fr": "Français",
"lang_zh": "中文 (Chinese)",
"lang_fa": "فارسی (Persian)",
"backup_title": "Simple Backup",
"download_backup": "Download data.json",
"restore_backup": "Restore from file",
"restore_confirm": "Are you sure? Current data will be overwritten and the application will restart.",
"restore_success": "Restore successful! Restarting...",
"invalid_backup_file": "Invalid backup file or structure",
"config_unavailable": "Configuration unavailable",
"config_unavailable_desc": "This client was created via the native Amnezia app.\\nThe private key is stored only on the user's device and cannot be recovered by the server.",
"client_public_key": "Client public key:",
"telemt_desc": "MTProxy-based Telegram proxy with advanced obfuscation and TLS emulation support.",
"tls_emulation": "TLS Emulation",
"tls_domain": "Masking Domain",
"max_connections_limit": "Max Connections",
"max_connections_hint": "0 for unlimited. Limits total concurrent users.",
"traffic_reset_strategy_label": "Traffic reset strategy",
"traffic_reset_never": "Never reset",
"traffic_reset_daily": "Daily reset",
"traffic_reset_weekly": "Weekly reset",
"traffic_reset_monthly": "Monthly reset",
"traffic_reset_hint": "How often should user traffic be reset",
"traffic_used_total": "Total spent",
"traffic_reset_info": "Next reset: {}",
"services": "Services",
"dns_desc": "Personal DNS server to block ads and protect the privacy of your queries.",
"dns_internal_hint": "The service runs on the internal network (172.29.172.254) without binding to host ports.",
"telemt_port_hint": "Port for the Telegram proxy (typically 443).",
"socks5_desc": "Single-account SOCKS5 proxy (3proxy) with username/password authentication.",
"socks5_username": "Username",
"socks5_password": "Password",
"socks5_password_placeholder": "Leave empty to auto-generate",
"socks5_password_hint": "If left empty, a random 16-character password will be generated.",
"socks5_port_hint": "TCP port the proxy will listen on. The default in the official Amnezia client is 38080.",
"socks5_change_settings": "Change settings",
"socks5_settings_title": "SOCKS5 — Connection settings",
"socks5_port_change_hint": "Changing the port recreates the container; existing sessions will be dropped.",
"socks5_settings_saved": "SOCKS5 settings saved",
"adguard_desc": "AdGuard Home — DNS-based ad blocker with a web admin UI.",
"adguard_mode": "Installation mode",
"adguard_mode_sidebyside": "Side-by-side",
"adguard_mode_sidebyside_hint": "runs alongside AmneziaDNS on a separate internal IP (172.29.172.253)",
"adguard_mode_replace": "Replace AmneziaDNS",
"adguard_mode_replace_hint": "removes amnezia-dns and takes its IP — VPN clients use AdGuard immediately",
"adguard_dns_port": "DNS port (53)",
"adguard_dns_port_hint": "Internal DNS port served to VPN clients via the docker network.",
"adguard_web_port": "Web UI port",
"adguard_dot_port": "DoT port",
"adguard_doh_port": "DoH port",
"adguard_expose_web": "Expose to internet",
"adguard_expose": "Expose to host",
"adguard_install_hint": "Initial AdGuard setup runs through its built-in wizard via the web UI after install.",
"adguard_internal_ip": "Internal IP",
"adguard_web_ui": "Admin URL",
"adguard_open_ui": "Open Web UI",
"edit_server_title": "Edit server",
"edit_keep_credential": "Leave empty to keep the current value",
"server_saved": "Server settings saved",
"servers_reordered": "Servers reordered",
"ping_checking": "Checking connectivity...",
"offline": "offline",
"api_tokens_title": "API tokens",
"api_tokens_hint": "Bearer tokens for external integrations. Send the token in the `Authorization: Bearer <token>` header. Tokens have admin-equivalent rights and stop working if their owner is disabled or demoted.",
"api_tokens_empty": "No API tokens yet. Create one to integrate the panel with an external service.",
"api_tokens_create": "Create token",
"api_tokens_create_title": "Create API token",
"api_tokens_name_label": "Name",
"api_tokens_name_placeholder": "e.g. Linear integration, CI bot, monitoring",
"api_tokens_name_hint": "Used to identify this token in the list. The token value itself is generated for you.",
"api_tokens_name_required": "Token name is required",
"api_tokens_created_title": "Token created",
"api_tokens_value_label": "Token value",
"api_tokens_warning_title": "This is the only time you'll see this token.",
"api_tokens_warning_body": "Copy it now and store it in your integration's secret manager. The panel keeps only a hash — if you lose this value you'll need to revoke and recreate the token.",
"api_tokens_revoke": "Revoke",
"api_tokens_revoke_confirm": "Revoke token \"{}\"? Any integration using it will stop working.",
"api_tokens_revoked": "Token revoked",
"api_tokens_created": "Created",
"api_tokens_last_used": "Last used",
"api_tokens_owner": "Owner",
"api_tokens_never": "never",
"coming_soon": "Coming soon",
"promo_star_cta": "Star us on GitHub",
"aivpn_subtitle": "AI-driven protocol selection that picks the right tunnel for the moment. Land it sooner — drop a star.",
"revproxy_title": "Reverse Proxy",
"revproxy_subtitle": "High-performance traffic obfuscation: hide your VPN endpoint behind a polished public-facing site, drop the DPI footprint.",
"management": "Management",
"server_management": "Server Management",
"server_management_desc": "Perform system-level actions on your machine.",
"check_server_services": "Check the server services",
"reboot_server": "Reboot server",
"clear_server": "Clear server",
"remove_server": "Remove server from panel",
"ssl_title": "SSL / HTTPS Settings",
"enable_https": "Enable HTTPS",
"panel_port_label": "Panel Port",
"domain_label": "Domain name",
"cert_path_label": "SSL Certificate path (.pem)",
"key_path_label": "Private Key path (.pem)",
"or_paste_text": "OR paste certificate text",
"cert_text_label": "Certificate content (CRT)",
"key_text_label": "Private Key content (KEY)",
"ssl_hint": "After enabling, the panel will be accessible via https:// on the specified domain. Make sure the file paths or text data are correct.",
"about_title": "About & Updates",
"current_version": "Current version",
"check_updates": "Check for updates",
"checking_updates": "Checking...",
"update_available": "New version available",
"download_update": "Download update",
"up_to_date": "You have the latest version",
"warp_hint": "WARP routes this host outbound through Cloudflare. It does not create a public panel URL like Quick Tunnel or ngrok.",
"warp_install_hint": "Install the official Cloudflare WARP client first, then restart the panel.",
"warp_install_required": "Install WARP first",
"warp_connect": "Connect WARP",
"warp_disconnect": "Disconnect",
"warp_connected": "WARP connected",
"warp_disconnected": "WARP disconnected",
"warp_status_unknown": "WARP status is unknown.",
"warp_status_not_installed": "Cloudflare WARP CLI is not installed on this host.",
"warp_status_connected": "Cloudflare WARP is connected.",
"warp_status_connecting": "Cloudflare WARP is connecting.",
"warp_status_disconnected": "Cloudflare WARP is disconnected.",
"warp_status_not_registered": "Cloudflare WARP is installed but not registered yet. Connect will try to register automatically.",
"warp_status_service_unavailable": "Cloudflare WARP service is not available. Make sure warp-svc is running.",
"warp_status_error": "Cloudflare WARP returned an error.",
"install_starting": "Starting installation...",
"server_check_complete": "Check completed",
"server_connection_error": "Connection error",
"connections_load_error": "Error loading connections",
"connection_updated": "Connection updated",
"edit_connection": "Edit connection",
"enable_connection_progress": "Enabling connection...",
"disable_connection_progress": "Disabling connection...",
"connection_enabled": "Connection enabled",
"connection_disabled": "Connection disabled",
"gb": "GB",
"marketplace": "Templates",
"open_marketplace": "Open Templates",
"marketplace_desc": "Install protocol and service templates available for this server.",
"installed_apps": "Installed applications",
"installed_apps_hint": "Only installed protocols and services are shown here. Use Templates to add more.",
"no_installed_apps": "No installed applications yet",
"no_installed_apps_desc": "Open Templates to install protocols or services on this server.",
"install_another": "Install another",
"new_instance": "new instance",
"port_next_instance_hint": "Choose a free UDP port for the additional instance.",
"checking_server": "Checking server services...",
"web_servers": "Web servers",
"nginx_desc": "NGINX web server with Let's Encrypt HTTPS certificate and editable index.html.",
"nginx_domain": "Domain",
"nginx_email": "Let's Encrypt email",
"nginx_port_hint": "HTTPS port exposed on the server. Port 80/TCP must be free and reachable for Let's Encrypt validation.",
"nginx_install_hint": "The domain must already point to this server. Port 80/TCP is used temporarily/permanently for HTTP-01 certificate validation.",
"site": "Site",
"site_editor": "Site editor",
"site_saved": "Site saved",
"nginx_dns_hint": "Create this DNS record before installation:",
"backup": "Backup",
"backups": "Backups",
"backup_desc": "Backups are created on the server and contain valuable protocol files needed to restore or recreate it later.",
"create_backup": "Create backup",
"creating_backup": "Creating backup...",
"backup_created": "Backup created",
"no_backups": "No backups yet",
"no_backups_desc": "Create the first backup for this protocol.",
"refresh": "Refresh"
}