1. Sidebar (Navigation Panel)
The Sidebar is the permanent navigation bar on the left side of the application, featuring a dark mode design.
1.1 Logo
The Zenith logo is displayed at the very top of the sidebar (Arrow + Mountain + "ZENITH" lettering). The logo serves as visual brand identification.
1.2 Navigation Menu
Below the logo is the vertical navigation list. The entries are divided into logical groups, separated by invisible spacers:
Main Areas
| Icon | Menu Item | Description |
|---|---|---|
| ๐ | Dashboard | Command Center โ Overview of all systems |
| ๐ค | Upload | Manage upload queue, add files/folders |
| โฌ | Download | Import and download NZB files |
| โ | Cloud Backup | Backups to cloud storage (Dropbox, GDrive, etc.) |
| ๐ | Statistics | Upload history, speed trends, data volumes |
Connection
| Icon | Menu Item | Description |
|---|---|---|
| ๐ก | VPN Guard | Manage VPN connection, configure Kill-Switch |
| ๐ | Remote Inputs | Configure RSS/Newznab feeds for automated downloads |
Automation
| Icon | Menu Item | Description |
|---|---|---|
| ๐ | Auto-Post | Automatic posting to forums after upload completion |
Notifications
| Icon | Menu Item | Description |
|---|---|---|
| ๐ | Webhooks | Webhook notifications (Discord, Telegram, etc.) |
System
| Icon | Menu Item | Description |
|---|---|---|
| โ | Settings | Providers, upload/download settings, watched folders |
| ๐ | License | Enter/activate license key, display tier |
| ๐ | Support | Report bugs, view logs, FAQ |
Active State Styling
- Selected: Cyan text color with a left cyan border and a dark background
- Hover: Slightly brightened text color
- Normal: Muted violet-gray
1.3 Admin Lock (๐ Admin)
The Admin Lock button is located at the bottom edge of the sidebar. This allows an administrator to lock specific tabs with a password to prevent unauthorized modifications.
| State | Display | Function |
|---|---|---|
| No password set | ๐ Admin (gray) | Click opens the Admin dialog for initial setup |
| Unlocked | ๐ Admin (green) | Click opens the Admin dialog for configuration |
| Locked | ๐ Locked (red) | Click opens the unlock dialog (password required) |
Locked tabs are marked with a ๐ symbol and can only be accessed after entering the admin password.
1.4 Demo Notice
In DEMO mode, an orange warning box is displayed at the bottom of the sidebar:
โ DEMO VERSION
Restricted functions
Upgrade for full access
2. Dashboard (Command Center)
The Dashboard is the home page of the application, providing an at-a-glance overview of all critical systems. It is scrollable and automatically updates every 3 seconds.
2.1 VPN Status Card (Full Width, Top)
The VPN card displays the current connection status and allows toggling the VPN on/off directly from the dashboard.
Elements
| Element | Description |
|---|---|
| ๐ก Status Icon | Large shield symbol |
| Status Text | "VPN Mode ACTIVE" (green) / "VPN Mode INACTIVE" (gray) / "VPN Connecting..." (yellow) / "VPN Error" (red) |
| Toggle Switch | iOS-style toggle switch for turning on/off |
| Detail Line | Displays tunnel type, IP address, and Kill-Switch status |
States
| State | Color | Detail Text |
|---|---|---|
| Inactive | Gray | VPN Tunnel: โ โ IP: โ โ Leak Check: โ |
| Connecting | Yellow | Connecting to WIREGUARD... |
| Active | Green | VPN Tunnel: WIREGUARD โ IP: 185.x.x.x โ Kill-Switch: Active |
| Error | Red | โ No WireGuard interface configured |
Behavior
- Upon activation, it first checks if a VPN interface is configured.
- In case of an error, the toggle automatically resets.
- The status synchronizes automatically with the VPN Guard tab.
2.2 Queue Card (Left, Main Area)
The Queue Card occupies the largest portion of the dashboard and features two sub-tabs: Upload and Download.
2.2.1 Upload Page
Displays all upload tasks in the queue as a scrollable list.
Task Entries
Each task is shown as a row containing the following info: - Task name (e.g., rudirudi5 (7th Copy)) - File size (e.g., 656.9 MB) - Status (Pending / Packing / Uploading / Completed / Failed / Paused) - Progress bar (0โ100%) - Speed (for active uploads)
Clicking a row selects the task (highlighted in blue), allowing it to be started individually.
Buttons
| Button | Function | Description |
|---|---|---|
| โถ Start All | Start Queue | Starts the entire upload queue (green) |
| โธ Pause All | Pause Queue | Pauses all running uploads (orange) |
| โถ Resume All | Resume Queue | Resumes the paused queue (green) |
| โถ Start Single | Single Task | Starts only the selected task; queue auto-pauses afterward |
| โ Hide Completed | Clean Up | Removes completed tasks from the display |
3-State Logic: The main button cycles between "Start All" โ "Pause All" โ "Resume All", identical to the Download tab.
2.2.2 Download Page
Displays all download tasks (NZB imports) in the queue.
| Button | Function |
|---|---|
| โถ Start All | Start all downloads |
| โธ Pause All | Pause all downloads |
| โถ Resume Downloads | Resume paused downloads |
| โถ Start Single | Start only the selected download |
| โ Hide Completed | Remove completed downloads |
2.3 Watched Folders (Top Right)
Displays all configured monitored folders (Watchfolders) with individual toggle switches.
| Element | Description |
|---|---|
| Folder Path | Full path, e.g., /home/user/Videos/Upload |
| Toggle Switch | On/Off switch for activation/deactivation |
Behavior
- Deactivating: Removes all pending tasks of this folder from the queue.
- Activating: Restarts the watchdog and scans the folder for existing files.
- Folders are added/removed via Settings โ Watched Folders.
- If no folders are configured: "No watchfolders configured".
2.4 Disk Space Guard (Bottom Right)
Displays current storage consumption and contains several sub-sections.
2.4.1 Disk Usage
| Element | Description |
|---|---|
| Percentage | Large, centered display (e.g., 79%) in Cyan |
| "DISK USAGE" | Label below the percentage |
| Progress Bar | Color gradient from Blue to Cyan to Orange. Contains a red threshold marker |
| โ Limit: 90% | Configurable threshold โ if usage exceeds this value, Disk Guard stops packing |
| Details | Free: 42.8 Gi โ Total: 60.1 Gi |
2.4.2 Cache
| Element | Description |
|---|---|
| ๐ฆ Cache: X.X MB | Displays the size of the temporary cache (temp directory) |
| ๐ Clear Cache | Button to delete all temporary files. Red text, grayed out when cache is empty |
2.4.3 RAM Mode
Below a purple divider line is the RAM Mode indicator:
| Element | Description |
|---|---|
| ๐ง RAM MODE | Header in Magenta |
| Status | "Active" (if tmpfs available) / "Disabled" / "Not Available" |
| Progress Bar | Purple color gradient shows RAM utilization |
| Details | Free: 7.5 Gi โ Total: 15.5 Gi |
| Max File Size | Maximum file size that can be processed in RAM (e.g., Max File Size: 5.2 GB) |
RAM Mode: When enabled, upload tasks are processed in RAM (tmpfs under
/dev/shm) instead of on the hard drive. This speeds up packing and PAR2 operations significantly but requires sufficient free memory.
2.4.4 Speedtest
| Element | Description |
|---|---|
| โก Speedtest | Button to start a speed test with the configured Usenet provider |
2.5 Title Bar (Custom)
Zenith uses its own frameless window title bar at the top edge:
| Element | Description |
|---|---|
| Title | Zenith Uploader vX.X in muted blue-gray |
| โ (Minimize) | Minimize window |
| โก (Maximize) | Maximize / restore window. Also accessible via double-click on the title bar |
| โ (Close) | Close window (shows a warning if tasks are active) |
| Drag & Move | Window can be moved by dragging the title bar |
2.6 Status Bar (Bottom)
At the bottom edge of the window is the permanent status bar:
| Element | Example | Description |
|---|---|---|
| Queue | 3 remaining โ 2 done |
Active + waiting upload tasks |
| Speed | 63.2 MB/s |
Current upload speed |
| Remaining | 2.5 GB |
Remaining data volume |
| ETA | 00:04:23 |
Estimated remaining time |
| โ | Separator | Visual separation between Upload/Download |
| โฌ X | โฌ 1 remaining โ 1 done |
Download queue status |
| โฌ Speed | โฌ 45.2 MB/s |
Current download speed |
2.7 System Tray Icon
Zenith shows a system tray icon in the taskbar (next to the clock): - Right-click: Context menu with Show/Hide, Pause/Resume, Quit - Left-click: Show/hide window - When the "Minimize to Tray" option is enabled, closing the window only hides it.
2.8 Ad Banner (DEMO only)
In DEMO mode, a rotating ad banner is displayed above the content area (across all tabs): - Rotates every 15 seconds - Displays upgrade offers and partner advertisements - Disappears after license activation
Upload Tab โ Upload Queue
The Upload tab is the central hub for managing all upload tasks. Here, files and folders are added, the upload process is controlled, and progress is monitored.
1. Page Overview
The tab is vertically split into the following areas: - Header โ Title and description - Control Bar โ Button to add files - Drag & Drop Zone โ Drop files via mouse - Upload Queue โ Interactive table with all tasks - Upload Log โ Real-time activity protocol
2. Header
| Element | Description |
|---|---|
| Title | "Upload Queue" in Cyan |
| Subtitle | "Add and manage files and folders in the upload queue." |
3. Control Bar
โ Add Upload โพ (Dropdown Button)
A primary button with a dropdown menu offering two options:
| Menu Item | Function | Description |
|---|---|---|
| ๐ Add File(s) | Opens system file dialog to select individual files. Multi-selection enabled | |
| ๐ Add Folder | Opens system folder dialog to select a complete folder |
Added files/folders are queued immediately.
4. Drag & Drop Zone
Below the control bar is a dashed drop zone:
๐ฅ Drag and drop files or folders here to upload
Behavior - Normal: Dashed gray border - On Drag Hover: Border changes to Cyan with a slight background glow - After Drop: Files are automatically added to the queue - Supports files and folders simultaneously - Multiple files can be dropped at once
5. Upload Queue (Main Area)
The queue is an interactive table housed inside a dark card with rounded corners.
5.1 Queue Header
| Element | Description |
|---|---|
| ๐ Upload Queue | Title on the left |
| Remaining: X GB | Remaining data volume on the right |
| ETA: HH:MM:SS | Estimated remaining time |
| Speed Indicator | Current upload speed displayed as an animated value |
5.2 Table Columns
| Column | Description |
|---|---|
| โ (Checkbox) | Selection checkbox per task. Header checkbox toggles all |
| Name | Name of the file/folder |
| Size | File size (e.g., 656.9 MB) |
| Status | Current processing status |
| Progress | Neon progress bar (0โ100%) with gradient |
| Speed | Current speed (e.g., 63.2 MB/s) |
| Actions | Action buttons per row |
5.3 Status Values
| Status | Meaning |
|---|---|
| Pending | Waiting for processing |
| Packing | Being compressed/split with 7-Zip |
| Generating PAR2 | PAR2 recovery files are being created |
| Uploading | Being uploaded to the Usenet server |
| Paused | Paused by the user |
| Completed | Successfully finished |
| Failed | Error occurred (details in the log) |
5.4 Action Buttons (Per Row)
Each row features three small buttons on the right:
| Button | Symbol | Function | Glow Color |
|---|---|---|---|
| Pause | โธ | Pause task / Unpause (Toggle) | Orange when paused |
| Play | โถ | Start single task (Single-Task Mode) | Green when active |
| Remove | โ | Remove task from queue | Red on hover |
Glow Logic - Active Task (Packing/Uploading): Play button glows green - Paused Task: Pause button glows orange - Completed/Failed Task: No glow, buttons remain neutral - Pending: All buttons neutral (gray)
5.5 Neon Progress Bar
The progress bar is a custom widget (NeonProgressBar) featuring: - Color gradient from Dark Blue to Cyan to Bright Blue - Glow effect at the leading edge of progress - Percentage displayed as overlay text
6. Global Control Buttons (Below Table)
| Button | Color | Function |
|---|---|---|
| โถ Start All | Green | Starts the entire upload queue. First state |
| โธ Pause All | Orange | Pauses all running uploads (Graceful Pause) |
| โถ Resume All | Green | Resumes paused queue (after being paused) |
| ๐ NZB Folder | Gray | Opens the directory containing generated NZB files in file manager |
| ๐ Mapping Folder | Gray | Opens the directory containing mapping/export files in file manager |
| โ Hide Completed | Cyan | Removes all completed tasks from the display |
| ๐ Delete Selected | Red | Deletes all tasks marked via checkbox |
Graceful Pause: When pausing, the current processing step (e.g., packing or uploading) is completed before the task halts. Active NNTP connections are not abruptly severed.
Automated Removal
If "Automatically remove completed uploads" is enabled in settings: - The "โ Hide Completed" button is grayed out and disabled. - Tooltip displays: "Automated removal is enabled". - Completed tasks are automatically removed from the table after 5 seconds.
7. Upload Log
At the bottom edge of the tab is a real-time protocol log inside its own card:
Appearance - Background: Dark terminal design with monospace font - Auto-Scroll: Automatically jumps to the newest entry
Color Coding
| Color | Meaning | Example |
|---|---|---|
| Green | Success | โ Task #3 completed: rudirudi5 |
| Red | Error/Warning | โ Task #5 failed: rudirudi5 โ Error |
| Gray | Info/Normal | ๐ Added to queue: rudirudi5 (656.9 MB) |
Log Entry Prefixes - ๐ File added to queue - ๐ฆ Task is packing (7-Zip) - ๐ก PAR2 creation running - โฌ Upload in progress - โ Task completed - โ Task failed - โ Warning (e.g., no selection) - โถ Queue started/resumed - โธ Queue paused - ๐ Task removed - โ Completed entries removed
8. Pipeline Processing
The background upload engine works in a pipelined mode:
While Task A is uploading, Task B can already begin packing.
- DiskGuard prevents too many tasks from packing simultaneously (storage control).
- ConnectionBudget manages NNTP connections shared between upload and download tasks.
9. Single-Task Mode
By clicking the โถ button on an individual task or via the "โถ Start Single" button in the dashboard, an isolated task can be launched:
- Only the selected task is processed.
- The remaining queue stays paused.
- Upon completion of the single task, the queue automatically returns to a paused state.
- Useful for testing or high-priority uploads.
Download Tab โ Usenet Downloader
The Download tab enables downloading files from Usenet via NZB files. It supports multi-connection downloads, automatic password detection, PAR2 repair, 7-Zip extraction, and NZBLNK protocol handling.
1. Page Overview
The tab is vertically split into the following sections: - Header โ Title and description - NZB Import Card โ NZB file/URL entry, password, queue button - Download Queue โ Table with all download tasks - Download Log โ Real-time activity log
2. Header
| Element | Description |
|---|---|
| Title | "Usenet Downloader" in Cyan |
| Subtitle | "Import NZB files and download directly from Usenet." |
3. NZB Import Card
A rounded card housing the import widget to add new downloads.
3.1 Drag & Drop Zone
๐ Drag & Drop NZB file here
- Normal: Dashed gray border
- On Drag Hover: Text changes to "๐ฅ Drop NZB here!", border turns Cyan
- Accepts
.nzbfiles exclusively
3.2 NZB Input Field
| Element | Description |
|---|---|
| Input Field | Paste path to NZB file or NZB URL |
| Placeholder | Insert /path/to/file.nzb or NZB URL... |
| ๐ Choose NZB | Button to open file dialog (Filter: *.nzb) |
Supported Inputs
- Local File: /home/user/downloads/example.nzb
- URL: https://example.com/releases/example.nzb โ downloaded automatically
- Clipboard: NZB URLs and NZBLNK links are auto-detected from the clipboard
3.3 Password Field
| Element | Description |
|---|---|
| Password: | Label on the left |
| Input Field | Password for encrypted archives |
| Placeholder | Blank = auto-detect from NZB name... |
Automatic Password Detection
The system automatically extracts passwords from the NZB filename using common formats:
- filename {{password}}.nzb
- filename [password].nzb
- filename - password.nzb
Upon detection, the password field is auto-populated and logged: ๐ Password detected: p*****d
3.4 Action Button
โ Add to Queue: Adds the NZB file to the download queue. Only becomes active when a valid NZB file/URL is provided.
Note: This button only queues the task; it does not start the download automatically. Execution is handled via the separate Start button.
4. Download Queue
4.1 Queue Header
| Element | Description |
|---|---|
| ๐ Download Queue | Title on the left |
| Speed Display | Current download speed (green) |
4.2 Table
Identical column structure to the Upload Queue:
| Column | Description |
|---|---|
| โ (Checkbox) | Selection checkbox per task |
| Name | Name of the NZB / content |
| Size | Download size (estimated from NZB segments) |
| Status | Current status |
| Progress | Neon progress bar |
| Speed | Current speed |
| Actions | โธ Pause / โถ Play / โ Remove |
4.3 Status Values
| Status | Meaning |
|---|---|
| Pending | Waiting in queue |
| Downloading | Articles are being downloaded |
| Repairing | PAR2 repair in progress |
| Extracting | 7-Zip unpacking the archives |
| Completed | Download and extraction successful |
| Paused | Paused by the user |
| Failed | Error occurred |
| Mirror: Uploading | Mirror Mode: Downloaded file is being re-uploaded |
4.4 Right-Click Context Menu
Right-clicking a queue entry reveals a context menu: - ๐ Set/Change Password: Opens a dialog to enter or modify the password for this download.
5. Control Buttons
| Button | Color | Function |
|---|---|---|
| โถ Start Downloads | Green | Starts the entire download queue |
| โธ Pause All | Orange | Pauses all downloads |
| โถ Resume Downloads | Green | Resumes paused downloads |
| ๐ Open Download Folder | Gray | Opens the download destination directory in the file manager |
| โ Hide Completed | Cyan | Removes completed downloads from the view |
| ๐ Remove Selected | Red | Deletes all tasks marked via checkbox |
6. Download Log
Real-time log tracking identical to the Upload tab: - Background: Terminal design with monospace font - Color Coding: Green (Success), Red (Error), Gray (Info)
Typical Log Entries - ๐ NZB added to queue - ๐ฅ Downloading NZB from URL - ๐ NZB link detected from clipboard - ๐ Password detected or set - ๐ Searching Binsearch/NZBIndex/Newznab - โฌ Download in progress (progress tracking) - ๐ก PAR2 repair - ๐ฆ Extraction - โ Download completed - โ Download failed - โธ Download(s) paused - โถ Download(s) resumed/started
7. Special Features
7.1 Clipboard Monitoring
Zenith automatically monitors the clipboard for:
- NZB URLs: Links containing .nzb are automatically loaded into the input field.
- NZBLNK Links: nzblnk: protocol links are processed automatically.
This feature can be turned off in settings (dl_clipboard_monitor).
7.2 NZBLNK Protocol Support
Zenith registers as a handler for the nzblnk: URI scheme. Clicking an NZBLNK link in a browser will:
1. Open Zenith (or bring the existing window to the foreground).
2. Process the link automatically.
3. Search for the NZB across the following sources (in order):
- Newznab indexers (if configured)
- Binsearch.info (free, no API key required)
- NZBIndex.com (free, RSS feed)
4. If found, the NZB is downloaded and added to the queue.
5. The password embedded in the NZBLNK is automatically applied.
7.3 Automatic Password Detection
The system extracts passwords from:
- NZB Filename: Common patterns like {{password}}, [password]
- NZBLNK Data: Password field inside the NZBLNK URI
- Manual: Right-click โ Set Password
7.4 Auto-Extraction
Following download completion, the system automatically runs: 1. PAR2 Repair: Repairs missing/corrupt segments if needed (configurable). 2. CRC Check: Verifies download integrity (configurable). 3. 7-Zip Extraction: Unpacks archives (configurable). 4. Archive Cleanup: Deletes RAR/7z files post-extraction (configurable). 5. Junk Cleanup: Deletes unneeded files like NFO, TXT, etc. (configurable).
7.5 Mirror Mode
Mirror Mode automates re-uploading after downloading:
Download โ Extraction โ Automated Upload via identical configuration
Status shifts to Mirror: Uploading. Controlled via the Remote Input tab or API.
7.6 Queue Persistence
The download queue saves automatically and restores upon application restart. Pending tasks survive app closures.
7.7 ConnectionBudget
Downloads and uploads split NNTP connections dynamically via the ConnectionBudget system: - If an upload runs, connections available for downloads scale back. - The Provider Usage Mode (Upload / Download / Both) dictates allocation. - If provider usage is locked to "Download", only download connections deploy.
8. Configurable Settings
The following choices can be customized under Settings โ Download:
| Setting | Default | Description |
|---|---|---|
| Download Folder | ~/Downloads | Target folder for finished downloads |
| Temp Folder | (blank) | Temporary folder for active downloads (optional) |
| Auto-Extraction | โ On | Automatically unpack archives post-download |
| PAR2 Repair | โ On | PAR2 recovery for missing segments |
| CRC Check | โ On | File integrity checks |
| Archive Cleanup | โ On | Delete RAR/7z files post-extraction |
| NZB Cleanup | โ Off | Delete NZB file post-download |
| Junk Cleanup | โ Off | Delete NFO/TXT files |
| Max Connections | 0 (Auto) | Maximum parallel connections |
| Speed Limit | 0 (None) | Download speed limit caps |
| Retry Count | 3 | Number of failed segment retry attempts |
| Clipboard Monitor | โ On | Auto-detect NZB URLs from clipboard |
| Auto-Removal | โ Off | Auto-clear finished downloads from the queue table |
Cloud Backup โ Encrypted Usenet Backup
The Cloud Backup tab provides tools to encrypt folders using AES-256, upload them to Usenet, and recover them later. The resulting NZB file acts as the decryption and restoration "key" โ viable as long as the Usenet retention window remains open.
1. Page Overview
The tab layout features five distinct card modules: - ๐ Backup Sources โ Manage folders - ๐ Encryption & Settings โ Passwords and configurations - ๐ Backup History โ Archive log tracking - ๐ฅ Restoration โ NZB-driven data recovery - ๐ Backup Log โ Real-time logging console
2. Backup Sources (Card 1)
2.1 Folder List
Each folder entry features a dedicated row containing:
| Element | Description |
|---|---|
| โ Checkbox | Choose folder for inclusion in next backup batch |
| Folder Name | Bold display name |
| Path | Complete file path (small, grayed font) |
| Schedule Dropdown | Manual / Every 24h / Weekly / Monthly |
| Status | โ Ready (green) / โ Backed Up (green) / โ X Folders (orange, for modified data) |
| โ Settings | Collapsible per-folder configuration menu |
| โ Remove | Exclude folder from the backup roster |
2.2 Per-Folder Settings (Collapsible)
| Setting | Options | Default | Description |
|---|---|---|---|
| Backup Mode | Individual Folders / Consolidated Archive | Individual Folders | "Individual" maps one archive per subfolder; "Consolidated" bundles everything together |
| Backup Type | Full / Incremental | Full Backup | Incremental flags only altered files |
| Compression | None / Normal / Ultra | Normal | 7-Zip compression tiers (0 / 5 / 9) |
| Volume Size | 10โ2000 MB | 100 MB | Split archive volumes for massive backups |
2.3 Change Detection
Zenith monitors backup paths every 5 minutes for modifications: - Tracks new, altered, or wiped files. - Status transitions to orange: โ 3 Folders with localized tooltip data. - Successful backups clear the state back to green.
2.4 Buttons
- โ Add Folder: Opens directory picker to append a new backup root source.
- โถ Start Backup Now: Instantly triggers an archival run across all checked rows.
3. Encryption & Settings (Card 2)
3.1 Left Side โ Password
| Element | Description |
|---|---|
| Encryption Password | Master key for AES-256 encryption (Required field) |
| ๐ Eye Button | Reveal/hide password string |
| ๐ Key Button | Generate complex, high-entropy password |
| Confirm Password | Re-enter string for safety validation |
| โ Remember Password | Store key within the encrypted configuration profile |
โ Critical: Lose the password, lose the backup. There is no password recovery or backdoor mechanism.
3.2 Right Side โ Global Settings
| Element | Default | Description |
|---|---|---|
| โ Stealth Upload (No Newsgroup) | โ On | Strip newsgroup headers for private, unindexed uploads |
| โ Retention Warning | โ On | Warn when archives edge near provider retention limits |
| Retention (Days) | 5000 | Retention scope of provider (e.g., Eweka: 5700) |
| NZB Save Location | ~/.zenith-uploader/backup_nzb/ | Output folder for backup index NZB files |
4. Backup History (Card 3)
A log tracking historical archives:
| Column | Description |
|---|---|
| Name | Target folder name |
| Size | Size of the encrypted archive |
| Date | Archive completion timestamp |
| Status | Success / Failed |
| Progress | Runtime progress bar tracking |
| Actions | Action tools |
5. Restoration (Card 4)
Recovering data requires three inputs:
| Field | Description |
|---|---|
| NZB File | Select the metadata archive generated at backup time (Browse button) |
| Password | Input the associated AES-256 decryption key |
| Destination | Target directory for unpacked data extraction (Browse button) |
Restoration Workflow: Download (Encrypted Archives via Provider) โ PAR2 Repair (20% Redundancy Checks) โ Decryption (7-Zip Unpacking) โ Restored Files (Target Output Verified)
Button โ ๐ฅ Restore: Commences the retrieval pipeline.
6. Backup Log (Card 5)
Matches the logger implementation found in the main upload/download modules: - Terminal monospace aesthetics. - Color coding: Green (Success), Red (Failure), Gray (Info).
Log Prefixes - ๐ Backup path registered - ๐ Encryption active - โ Crypto / Upload / Download task finished - ๐ก PAR2 generation processing (20% redundancy) - ๐ค Uploading archive chunks - ๐ฅ Pulling archive chunks (Restoration) - โฐ Operational scheduling updated - โ Retention threshold reached / Critical anomaly triggered - ๐ Backup source purged
7. Automation Features
7.1 Scheduled Backups
| Schedule | Interval | Description |
|---|---|---|
| Manual | โ | Executes exclusively via "Start Backup Now" button |
| Every 24h | 24 Hours | Once-daily automated backup |
| Weekly | 7 Days | System runs once per week |
| Monthly | 30 Days | System runs once per month |
- Scheduling scans repeat every 60 seconds.
- Tasks fire only if elapsed delta time outdates the specified interval.
7.2 Retention Warning
- Scans run every 2 hours + initially 5 seconds post-boot.
- Alerts prompt 30 days ahead of maximum retention dates.
- Alert actions recycle every 2 days until addressed or muted.
7.3 Change Detection
- Scans iterate every 5 minutes + initially 10 seconds post-boot.
- Compares file modification attributes against the previous run matrix.
- Highlights changed directories inside status tooltips via orange indicators.
8. Backup Process (Technical Specification)
8.1 Encryption Parameters
- Algorithm: AES-256 (via 7-Zip
-pflag syntax). - Header Obfuscation: Enabled (
-mhe=on) โ blanks internal directory names. - Split Thresholds: Scalable volumes (10โ2000 MB options).
- PAR2 Redundancy: Absolute 20% floor layout ensures payload resiliency.
8.2 Backup Modes
| Mode | Description |
|---|---|
| Individual Folders | Processes each first-tier directory branch into its own separate archive payload |
| Consolidated Archive | Treats the target folder tree root as a single grouped container package |
Statistics Tab โ Upload & Download Statistics
The Statistics tab displays an overview of all upload and download histories, rendering data via interactive charts, metrics cards, and historical lists. Data is polled directly from a local SQLite engine every 5 seconds.
1. Page Overview
- Header with Timeframe Filters
- Upload Metrics โ 6 analytical monitoring blocks
- Upload Volume Charts โ Custom bar metrics
- Download Metrics โ 6 analytical monitoring blocks
- Download Volume Charts โ Custom bar metrics
- Recent Upload History List
- Recent Download History List
- Global Purge Button โ Wipe statistics tables
2. Header & Timeframe Filters
| Element | Description |
|---|---|
| ๐ Statistics | View header title in Cyan |
| Timeframe: | Control label + dropdown selector on the right |
| Option | Range Scope | Chart Grouping Granularity |
|---|---|---|
| 7 Days | 7 Days | Daily Bar Nodes (DD.MM) |
| 30 Days | 30 Days | Daily Bar Nodes (DD.MM) |
| Yearly | 365 Days | Monthly Bar Nodes (MM) |
| Total | Infinite | Yearly Bar Nodes (YYYY) |
Changing options filters values across metrics cards, charts, and histories.
3. Upload Metrics (โฌ UPLOADS)
Six cards span horizontally, displaying icons, titles, and data values:
| Icon | Title | Color | Description |
|---|---|---|---|
| ๐ฆ | Total Volume | Cyan | Total data volume uploaded in timeframe (e.g., 145.3 GB) |
| ๐ | Files | Green | Total successful file/folder uploads count |
| โ | Failed | Red | Total failed upload tasks |
| ๐ | Today | Yellow | Data payloads processed during current date |
| โฑ | Upload Time | Cyan | Cumulative active upload duration (e.g., 2h 45m) |
| โก | Avg Speed | Green | Average upload velocity throughput (e.g., 63.2 MB/s) |
4. Upload Volume Chart
A custom widget (BarChartWidget) drawn directly via QPainter: - Bars: Rounded corners running a Dark Blue to Cyan gradient fill. - Y-Axis: Dynamic scaling algorithm bounded by dashed mesh lines. - X-Axis: Timestamps scale according to active filters (DD.MM, MM, or YYYY). - Metrics: Floating values display centered above individual bars. - Empty States: Renders "No data available" fallbacks if query rows return null.
5. Download Metrics (โฌ DOWNLOADS)
Matches the upload metrics card structure, styled using a purple theme:
| Icon | Title | Color | Description |
|---|---|---|---|
| ๐ฆ | Total Volume | Purple | Cumulative downloaded data footprint volume |
| ๐ | Files | Green | Successful incoming extraction tasks completed |
| โ | Failed | Red | Terminated or corrupted download attempts |
| ๐ | Today | Yellow | Data payloads pulled during current date |
| โฑ | Download Time | Purple | Cumulative network download duration |
| โก | Avg Speed | Green | System average download throughput speed |
6. Download Volume Chart
Identical to the upload chart design, but rendered with a purple color gradient.
7. Recent Uploads (History List)
Renders the 10 most recent upload rows inside a scrollable menu list:
| Element | Description |
|---|---|
| Name | Original source file or directory string name |
| Size | Native payload byte capacity metrics (e.g., 656.9 MB) |
| Status | โ Success / โ Failed / โณ Pending |
| Date | Event processing timestamp (DD.MM.YYYY HH:MM) |
Status Colors: โ Success: Green, โ Failed: Red, โณ Pending: Yellow
Empty State Text: "No upload history available."
8. Recent Downloads (History List)
Identical layout matching the upload list structure, detailing recent downloads.
Empty State Text: "No download history available."
9. Reset Statistics
A red warning button is located at the bottom edge:
Button โ ๐ Reset Statistics: Clears database rows tracking structural metrics.
Before clearing records, the system prompts the user with an alert dialog:
Are you sure you want to reset all statistics? This action permanently clears all upload and download statistics, as well as the job history logs. This action cannot be undone.
10. Data Source Specifications
Data maps from internal tables stored at ~/.zenith-uploader/zenith.db:
Table: stats (Daily Aggregated Logs)
| Column Name | Description |
|---|---|
| date | Primary Key string formatted as YYYY-MM-DD |
| bytes_uploaded | Total outbound payload bytes processed |
| files_uploaded | Integers tracking completed upload instances |
| files_failed | Integers tracking broken upload operations |
| bytes_downloaded | Total inbound payload bytes processed |
| files_downloaded | Integers tracking completed download jobs |
| downloads_failed | Integers tracking broken download operations |
| upload_seconds | Total time elapsed processing upload streams |
| download_seconds | Total time elapsed processing download streams |
| timed_bytes_uploaded | Active outbound network byte transfer volume counts |
| timed_bytes_downloaded | Active inbound network byte transfer volume counts |
VPN Guard โ VPN Protection for Uploads
The VPN Guard tab manages OpenVPN and WireGuard connection profiles, offering server configuration slots and custom location mapping. A built-in Kill-Switch automatically halts active queues if network tunnels drop.
1. Page Overview
- Header โ Descriptive metadata
- Root Access Warning โ Permissions engine tracking (Linux hosts)
- Status Card โ Control toggles and network routing metrics
- Saved Profiles โ Configuration profiles list
- Settings โ Kill-Switch management parameters
- VPN Log โ Real-time event tracking console
2. Header
| Element | Description |
|---|---|
| Title | "VPN Guard" in Cyan |
| Subtitle | "Secure your uploads using VPN tunneling and integrated Kill-Switch systems." |
3. Root Access Warning (Linux Environments)
Linux host runtimes poll environment spaces to ensure root permissions or active pkexec backends exist. Missing hooks trigger a warning banner:
โ Root privileges unavailable. VPN subsystems require root permissions (pkexec or sudo). Please install policykit-1 dependencies:
sudo apt install policykit-1
This warning is automatically hidden on Windows platforms.
4. Status Card (Main Area)
4.1 Status Display
| State | Icon | Display Text | Color | Detail String |
|---|---|---|---|---|
| Inactive | ๐ก | INACTIVE | Gray | "No active VPN tunnel detected" |
| Connecting | ๐ก | CONNECTING... | Yellow | "Establishing connection to OPENVPN/WIREGUARD..." |
| Connected | ๐ก | CONNECTED | Green | "OPENVPN ยท IP: 185.xxx.xxx.xxx" |
| Error | ๐ก | ERROR | Red | Localized diagnostic anomaly string details |
4.2 Connect/Disconnect Buttons
| Button | State Context | Color | Function |
|---|---|---|---|
| ๐ Connect | Inactive | Blue-Cyan Gradient | Fires connection pipeline using active target profile |
| โณ Connecting... | Processing | Muted Gray | Button locks disabled while connection handshake works |
| โ Connected | Active Tunnel | Muted Gray | Button locks disabled while tunnel state remains stable |
| โน Disconnect | Active Tunnel | Crimson Red | Terminates active background processes and clears tunnels |
5. Saved Profiles
5.1 Profile Cards
- Country Flag: Emoji flag indicator based on geographic metadata.
- Profile Identity Name: Bold label title (e.g., "Mullvad Amsterdam").
- Detail Row: Provider name ยท Country destination ยท Protocol metadata.
- Protocol Badges: Small tags color-coded by engine types (OP = OpenVPN Green, WI = WireGuard Cyan).
- โ Selection Node: A cyan dot marks the active target profile.
- โ Purge Control: Circular icon button to clear profiles (glows red on hover).
Empty State View: "No profiles saved. Add a new VPN profile configuration to begin."
5.2 Add Profile Dialog (๏ผ Button)
| Input Label | Format / Behavior |
|---|---|
| Profile Name | Text string field (e.g., "Mullvad Amsterdam") โ Required |
| Provider Selector | Dropdown: Mullvad, ProtonVPN, AirVPN, NordVPN, Surfshark, PIA, Windscribe, IVPN, Privado, Custom |
| Protocol Selector | Toggle: OpenVPN / WireGuard |
| Country Selector | 21 countries with flag emoji metadata |
| Config File Source | File path to .ovpn or .conf (Browse button) โ Required |
| Username | Visible only under OpenVPN; optional |
| Password | Visible only under OpenVPN; optional |
Supported Countries: ๐ณ๐ฑ Netherlands, ๐ฉ๐ช Germany, ๐บ๐ธ USA, ๐ฌ๐ง UK, ๐จ๐ญ Switzerland, ๐ธ๐ช Sweden, ๐ซ๐ท France, ๐จ๐ฆ Canada, ๐ฏ๐ต Japan, ๐ฆ๐บ Australia, ๐ท๐ด Romania, ๐ธ๐ฌ Singapore, ๐ช๐ธ Spain, ๐ฎ๐น Italy, ๐ณ๐ด Norway, ๐ซ๐ฎ Finland, ๐ฆ๐น Austria, ๐ง๐ช Belgium, ๐ต๐ฑ Poland, ๐จ๐ฟ Czech Republic, ๐ Other.
6. Settings
Kill-Switch Parameters
| Toggle Switch | Default | Logic |
|---|---|---|
| โ Enable Kill-Switch | โ On | "Halt active upload processes instantly if VPN paths drop" |
If the tunnel tears unexpectedly, the master AppController catches the exception via the vpn_status_changed listener loop. It immediately pauses all active uploads, switches the display to ERROR, and logs the event. Queues must be restarted manually after establishing a safe connection path.
7. VPN Log Console
Monospace console interface with real-time log updates.
8. VPN Engine Architecture
| Protocol | Binary | Config File Schema |
|---|---|---|
| OpenVPN | openvpn | Native .ovpn configurations |
| WireGuard | wg-quick | Native *.conf definitions |
- Active profile data loads into transient memory execution pools.
- Monitors exit codes and standard error pipes to trace active states.
- Validates connectivity paths using external IP check lookups post-handshake.
- Emits cross-module
vpn_status_changedsignaling to adjust dashboard widgets.
Part 7a: Remote Inputs โ RSS Feeds
Remote Sources โ RSS Feeds
The RSS Feed sub-tab automates polling remote indexer endpoints, scraping for target NZB releases matching defined parameters, and routing payloads directly into download task streams.
1. Structural Overview
The module uses a vertical adjustable layout: - Top Half: Interactive grid displaying all saved RSS configurations. - Bottom Half: Granular editor form fields + feed preview nodes + background logging.
2. Feed Grid Matrix (Top Section)
2.1 Table Columns
| Column | Description |
|---|---|
| Active Flag | Checkbox โ Toggle automated parsing loops on/off |
| Identifier | Unique display tag name given to the feed source |
| Target URL Endpoint | Complete string address mapping, inclusive of API parameters |
| โ Purge Row | Clear selection row from memory |
Button โ ๏ผ Add New Feed: Injects a blank configuration row entry into the data matrix.
3. Detail Configuration Form (Bottom Section)
Selecting any row entry maps its parameters directly into the granular input form fields.
3.1 Field Mappings
| Field | Placeholder | Description |
|---|---|---|
| Feed Identifier Name | My RSS Feed | User display string label tag |
| Feed URL Endpoint | https://endpoint.com/rss?... | Target address string, including authorization parameters |
| Destination Path | ~/Downloads/RSS/ | Dedicated target save location |
| Polling Interval | 30 min | Execution loop timing interval (5โ1440 minutes) |
| Batch Limit Caps | 25 | Maximum release downloads per single run pass (1โ500) |
| Regex Filter String | (?=.1080p)(?=.2026) | Case-insensitive regex tracking token |
| Minimum File Threshold | No Minimum | Floor constraint size limit in megabytes (0 disables) |
| Maximum File Threshold | No Maximum | Ceiling constraint size limit in megabytes (0 disables) |
| โ Auto-Queue Injection | Unchecked | Push matches straight into download tasks without manual approval |
3.2 Regular Expression Filter Blueprints
| Regex Example | Filtering Effect |
|---|---|
single.charts |
Matches titles containing the string literal |
(?=.*1080p)(?=.*german) |
Match requires both 1080p AND german tokens |
1080p\|720p |
Boolean matching allows either 1080p OR 720p |
^The\\. |
Matches strings starting with the exact prefix "The." |
\\.2026\\. |
Forces selection to require the specific year notation .2026. |
The dot
.acts as a wildcard match character. Escape via\\.to target literal dots. Use.*for flexible character fills. Checks are case-insensitive.
3.3 Functional Actions
| Button | Color | Function |
|---|---|---|
| ๐พ Save Feed Profile | Orange Gradient | Commits parameters to local configuration |
| ๐ Force Immediate Poll | Orange Hover Glow | Bypasses intervals to execute an on-demand feed scrape |
4. Results Preview Grid
Manual polling actions return target node arrays for validation:
| Column | Description |
|---|---|
| Selector | Checked rows mark records for download processing |
| Release Title | Structural name parsed from raw endpoint nodes |
| Calculated Size | File payload capacity estimates |
Preview Controls - โ Select All: Checks all visible rows. - โฌ Download Checked: Pushes selected rows into download queues. - ๐ Dismiss Records: Removes selected records from preview tables.
Dismissed or downloaded items register their unique GUID hashes into local storage to prevent duplicates on subsequent polling iterations.
5. Background Engine Automation
When automated parsing loops run: 1. Timer Fires โ Scrape API Source โ Filter Out Known GUIDs โ Run Regex & Size Verifications 2. If Auto-Queue Disabled: Append to Display Matrix 3. If Auto-Queue Enabled: Inject Tasks Directly
Part 7b: Remote Inputs โ Newznab Indexers
Remote Sources โ Newznab Indexer
The Newznab integration layer connects directly to compatible indexing endpoints via native API query routing, running custom parameter filtering protocols.
1. Overview
Matches the split layout structure used by the RSS component: - Top Half: Grid displaying active indexing engines. - Bottom Half: Profile editor fields + communication log.
2. Configuration Grid (Top Section)
| Column | Description |
|---|---|
| Active State | Toggle validation loops for the selected provider |
| Engine Tag | Display identifier (e.g., "NZBGeek") |
| Base API Address | Host address endpoint for API connectivity |
| Target Save Path | File destination folder for this endpoint profile |
| โ Purge Profile | Deletes provider entry from memory |
Button โ ๏ผ Add Indexer: Appends a blank indexer entry row.
3. Detail Configuration (Bottom Section)
| Field | Placeholder | Description |
|---|---|---|
| Indexer Name | NZBGeek | Unique tag mapping reference name |
| Base URL | https://api.nzbgeek.info | Core endpoint address routing node |
| API Key Token | (Masked) | Unique cryptographic access credential |
| Category Targets | 2000,5000,7000 | Comma-delimited Newznab category IDs |
| Download Save Path | ~/Downloads/Newznab/ | Save location override path |
| Polling Interval | 30 min | Background scheduling (5โ1440 minutes) |
| Batch Cap | 100 | Search result limits (10โ500 rows) |
| Title Filtering Expression | .1080p.BluRay.* | Regex targeting release parameters |
| Minimum File Bounds | No Minimum | Floor constraint in megabytes |
| Maximum File Bounds | No Maximum | Ceiling constraint in megabytes |
| โ Automated Pulls | Unchecked | Auto-download when criteria matches |
| โ Auto-Start Engines | Checked | Instantly launch download workers upon queue insertion |
Newznab Category Reference
| Category ID | Target | Category ID | Target |
|---|---|---|---|
| 2000 | Video / Movies | 1000 | Emulators / Console |
| 5000 | Television / TV Series | 4000 | Computer / PC Software |
| 7000 | Digital Books / E-Books | 6000 | Adult Content |
| 3000 | Audio / Music |
Tip: Separate multiple IDs with commas. Leaving the field blank polls all categories.
4. Functional Controls
| Button | Color | Function |
|---|---|---|
| ๐พ Commit Configuration | Blue-Cyan Gradient | Commits to local config database |
| ๐ Validate Connection | Cyan | Queries /api?t=caps to verify authorization |
| ๐ Force Run Scrape | Cyan | Bypasses scheduling for immediate crawl |
5. Background API Architecture
Newznab Endpoint Mapping:
- Capability Diagnostics: GET /api?t=caps&apikey=TOKEN
- Keyword Queries: GET /api?t=search&q=QUERY&apikey=TOKEN&cat=CATS&limit=LIMIT
- NZB Fetching: GET /api?t=get&id=GUID&apikey=TOKEN
Processing Flow: 1. Background timer triggers execution tasks. 2. Issues HTTP GET requests with parsed categories and limits. 3. Iterates responses against active title regex matrices. 4. Drops entries failing size threshold checks. 5. Skips previously parsed items via stored GUID records. 6. If "Automated Pulls" enabled, fetches NZB and appends to active lists. 7. If "Auto-Start Engines" enabled, execution begins immediately.
6. Validated Indexer Networks
Supported systems include all standard Newznab-compliant providers: NZBGeek, DrunkenSlug, NZBFinder, NZBPlanet, DOGnzb, and Tabula Rasa.
Part 7c: Remote Inputs โ FTP / SFTP
Remote Sources โ FTP / SFTP
The FTP/SFTP module provides an integrated remote terminal file browser, featuring path tree navigation and background downloads to pull assets directly into localized workspace directories.
1. Structural Overview
- Top Bar: Authentication parameter forms and server access inputs.
- Main Center Body: Remote directory tree browser table showing remote filesystem structures.
- Bottom Section: Destination folder management and logging console feedback.
2. Connection Settings
2.1 Form Fields
| Field | Default | Description |
|---|---|---|
| Target Host Address | โ | Remote domain string or IP endpoint |
| Connection Port | 22 | Channel selection (22 for SFTP, 21 for FTP) |
| User Identity | โ | Authentication credential string |
| Security Key/Password | (Masked) | Authentication security string |
| โ Enforce SFTP (SSH) | Checked | Force SSH encapsulation over cleartext FTP |
| Remote Root Path | / | Target directory initialized post-handshake |
2.2 System Actions
| Button | Color | Function |
|---|---|---|
| ๐ Establish Connection | Green | Connects to remote endpoint and initializes file listing |
| ๐ Drop Connection | Red | Kills active background sessions |
| ๐งช Diagnostic Test | Cyan | Verifies reachability and credentials without locking session |
3. Remote Directory Tree Browser
3.1 Navigation Ribbon
- โฌ Upper Directory: Navigates up one tier into parent folder levels.
- ๐ Refresh Content: Re-scans active directory structures.
- Active Path Box: Monospace rendering of raw remote server path (Cyan).
3.2 Directory Content Table
| Column | Description |
|---|---|
| File Type Icon | ๐ for directories, ๐ for files |
| Name | Filename parsed from remote listings |
| Size | Byte sizes from filesystem records |
| Modified | Last write timestamp from host metadata |
3.3 Interactions
- Double-Click Directory: Enters selected child directory.
- Single-Click File: Flags rows for selection (supports multi-select).
- Click Parent Arrow (โฌ): Steps backward into higher logical trees.
3.4 Library Implementations
- SFTP: Driven via paramiko. Keepalive signals every 30 seconds.
- FTP: Driven via ftplib. Passive mode enforced; UTF-8 parsing for extended character sets.
4. Download Engine
| Element | Description |
|---|---|
| Local Workspace Box | Output destination path selector |
| ๐ Browse Button | System folder picker for destinations |
| โฌ Pull Checked Files | Downloads all files marked in browser |
- Processes checked items sequentially through an asynchronous queue.
- Selecting a folder entity pulls its entire file tree structure recursively.
Part 8a: Auto-Post โ Forum Poster
Auto-Post โ Forum Poster
The Forum Poster sub-tab manages automated release indexing notifications, rendering data via template formatting engines, and pushing topics directly into targeted forum boards.
1. Overview
The UI splits into four functional layout segments: - Header Ribbon โ Title + "๏ผ Add New Profile" trigger - Profile Selection Grid โ Active destination board configurations - Posting Hold Queue โ Manual approval workspace - Reference Help Card โ Contextual documentation and syntax tips
2. Destination Profile Cards
2.1 Interface Components
| Component | Description |
|---|---|
| โ / โ Active Toggle | Modulates automation loops (Green โ active / Gray โ standby) |
| Forum Software Icon | Board backend type (e.g., ๐ต vBulletin, ๐ฃ XenForo) |
| Profile Label | Bold identification tag (e.g., "MovieBoard") |
| Path Info | Target board engine type + shortened URL |
| Automation Badges | ๐ค Auto (Green), ๐ Manual (Yellow), โธ Disabled (Gray) |
| Last Activity | Date of last verified posting submission |
| ๐ Purge Button | Triggers profile deletion verification |
2.2 Board Software Engine Colors
| Engine | Icon | Border Accent |
|---|---|---|
| vBulletin | ๐ต | Royal Blue |
| XenForo | ๐ฃ | Purple |
| MyBB | ๐ | Orange |
| WoltLab Suite | ๐ด | Crimson Red |
| IP.Board | ๐ข | Emerald Green |
3. Profile Management Dialog
3.1 Form Fields
| Field | Description |
|---|---|
| Board Profile Label | Reference tag name โ Required |
| Engine Platform Type | Dropdown: WoltLab Suite, XenForo, vBulletin, MyBB, IP.Board |
| Board Target URL | Target URL routing node โ Required |
| Authentication Identifier | Login name parameter |
| Authentication Key | Security key (masked) |
| Layout Template | Dropdown selecting parsing formats from Template Editor |
| Thread Title Blueprint | {filename} โ Title formatting with custom tokens |
| Posting Automation Mode | Automated or Manual Hold Queue |
| Anti-Spam Throttle | 30 sec hardcoded delay (0โ600 seconds) |
3.2 Thread Title Tokens
| Token | Effect |
|---|---|
{filename} |
Resolves to complete source file name |
{filesize} |
Resolves to formatted data size (e.g., 656.9 MB) |
{date} |
Inserts execution date timestamps |
3.3 Modal Actions
- ๐ Test Login: Probes target forum authorization without committing changes.
- โ Abort: Closes modal, discarding uncommitted edits.
- โ Commit Profile: Validates, saves, and updates lists.
4. Operational Modes
| Mode | Badge | Behavior |
|---|---|---|
| Automated | ๐ค | Pushes topics directly upon upload completion |
| Manual | ๐ | Routes to staging queue for review |
| Disabled | โธ | Halts all communication pipelines |
5. Manual Staging Hold Queue
Jobs under Manual mode wait inside this workspace: - ๐ Content Title: Source release filename. - โ Destination: Target profile and engine version. - โถ Post Release: Instantly processes topic submission. - ๐ Drop Task: Purges staged notification.
Empty State: "No notifications staged inside the manual validation hold queue."
6. Engine Compatibility
| Platform | Status | URL Routing Syntax |
|---|---|---|
| vBulletin 3.x | โ Stable | Requires forumdisplay.php?f=ID |
| XenForo | ๐ Development | Future release |
| WoltLab Suite | ๐ Development | Future release |
| MyBB | ๐ Development | Future release |
| IP.Board | ๐ Development | Future release |
Part 8b: Auto-Post โ Templates
Auto-Post โ Template Manager
The Templates workspace handles BBCode and HTML string formatting, letting users map dynamic tokens into target forum post payloads.
1. Overview
The interface uses a horizontal split layout: - Top Ribbon: Chip-based listing of all available token tags. - Left Pane: Listing of all saved layout definitions. - Right Canvas: Monospace text editor with format control toolbar.
2. Token Reference Chips
| Token | Description |
|---|---|
{title} |
Source filename minus file extension |
{filename} |
Full raw source file name |
{password} |
Unique plaintext password for archive security |
{header} |
Unique Usenet subject line identifier |
{filesize} |
Formatted data footprint (e.g., 656.9 MB) |
{nzb_name} |
Generated NZB metadata filename |
{date} |
Execution date timestamp |
{newsgroup} |
Target binaries group assignment |
{description} |
User descriptive notes via prompt |
{nfo_content} |
Raw text extracted from .nfo file pairs |
Tokens display inside green chips with hover tooltips detailing evaluation mechanics.
3. Left Navigation Pane
- Selection Tree: Displays templates next to a ๐ icon. Clicking populates the editor.
- ๏ผ New Template: Generates a new entry with boilerplate code.
- ๐ Delete Template: Prompts verification to clear layouts.
Limits: Minimum 1 active template. Maximum 10 templates (MAX_POSTING_TEMPLATES). Auto-generates a standard template if all records are cleared.
4. Right Editing Canvas & Toolbar
4.1 Components
| Component | Description |
|---|---|
| Template Title Input | Reference name (e.g., "vBulletin 3") |
| Format Selection | Dropdown: BBCode / HTML |
| Fast Code Toolbar | Buttons to inject formatting tags |
| Monospace Canvas | Text editor with green-on-dark interface |
4.2 Toolbar Buttons
11 toolbar buttons for quick insertion of formatting tags:
| Button | Left Tag | Right Tag |
|---|---|---|
| B | [b] |
[/b] |
| I | [i] |
[/i] |
| U | [u] |
[/u] |
| Color | [color=red] |
[/color] |
| Size | [size=3] |
[/size] |
| Center | [center] |
[/center] |
| URL | [url] |
[/url] |
| IMG | [img] |
[/img] |
| Code | [code] |
[/code] |
| Hide | [hide] |
[/hide] |
| Quote | [quote] |
[/quote] |
Highlighting text wraps selection inside chosen tags. Clicking without selection inserts at cursor.
4.3 Save Actions
Button โ ๐พ Save Layout Profile: Writes names, formats, and text blocks to global config.
5. Default Boilerplate Layout (vBulletin 3.x)
[center][size=5][color=red][b]{title}[/b][/color][/size][/center]
[center][size=3][color=][b]ยปContent Descriptionยซ[/b][/color][/size]
[size=2][color=white]{description}[/color][/size][/center]
[nfo]{nfo_content}[/nfo]
[hide]
[center][size=3][color=][b]ยปUsenet Release Headerยซ[/b][/color][/size]
[size=2][color=white]{header}[/color][/size][/center]
[center][size=3][color=][b]ยปArchive Security Passwordยซ[/b][/color][/size]
[size=2][color=white]{password}[/color][/size][/center]
[center][nzblnk]nzblnk:?t={title}&h={header}&p={password}[/nzblnk]
[/center][/hide]
6. Rendering Engine Process
- Pulls assigned format from active profile definitions.
- Regex replacement loop swaps all
{placeholder}tags with runtime parameters. - Renders thread title separately using its own formatting rules.
- Forwards finalized text to forum poster threads.
Webhooks & Notifications
The Webhooks sub-tab hooks into API interfaces to push real-time status alerts across communication applications when milestones or warnings trip.
1. Overview
- Header: Title + "๏ผ Add New Webhook" trigger.
- Active Target Grid: Saved automation endpoints as selectable items.
- Reference Help Card: Payload syntax documentation.
2. Supported API Providers
| Provider | Icon | Color | Description |
|---|---|---|---|
| Discord | ๐ฌ | Blurple Blue | Standard inbound webhook payload processing |
| Telegram | ๐จ | Sky Blue | Bot API messaging via Chat ID selectors |
| โ | Muted Silver | SMTP mail relay with custom auth keys | |
| ntfy | ๐ | Clay Orange | Push topics via public/private ntfy.sh nodes |
| Custom Endpoint | ๐ | Cyan Teal | Raw HTTP sending custom JSON maps |
3. Webhook Profile Items
| Component | Description |
|---|---|
| Provider Icon + Label | Platform type + user identifier (e.g., ๐ฌ Discord Uploads) |
| Context Info | Active configurations (e.g., Discord ยท 5 Target Events Selected) |
| Platform Badge | 3-letter code on brand identity backdrop (e.g., DIS in blue) |
| โ Activity State | Green = live, Gray = deactivated |
| โ Delete Button | Opens confirmation dialog |
Empty State: "No webhook alert paths mapped. Configure a tracking profile to receive status logs."
4. Configuration Wizard Dialog
4.1 Base Setup
| Field | Description |
|---|---|
| Webhook Label | Reference tag (e.g., "Discord Uploads") โ Required |
| Target Provider | Dropdown: Discord, Telegram, E-Mail, ntfy, Custom |
4.2 Platform-Specific Fields
Discord: Target Webhook URL โ Required
Telegram: Bot Token (via @BotFather) โ Required; Chat ID โ Required
E-Mail SMTP: Host Server, Port (587), โ TLS, Username, Password, Recipient โ Required
ntfy: Server URL (https://ntfy.sh), Topic Channel โ Required, Access Token โ Optional
Custom HTTP: Destination URL โ Required, HTTP Method (POST/PUT/GET), Headers (JSON)
5. Event Triggers
| Event Key | Label | Trigger |
|---|---|---|
| upload_done | Upload Completed | Outbound job completed successfully |
| upload_failed | Upload Failed | Outbound pipeline error |
| download_done | Download Completed | Inbound asset downloaded and verified |
| download_failed | Download Failed | Inbound download error |
| queue_empty | Queues Empty | Zero remaining pipeline jobs |
| vpn_lost | VPN Guard Intervention | Tunnel dropped, tasks paused |
| watchdog_new | Monitored File Identified | New file in watched directories |
| disk_critical | Free Space Anomaly | Drive thresholds crossed |
All events default to checked on new profiles.
6. Payload Data Switches
| Toggle | Display | Default |
|---|---|---|
| filename | Filename Label | On |
| filesize | Data Footprint | Off |
| duration | Runtime Delta | Off |
| status | Operational Status | On |
| error_details | Exception Analysis | Off |
| timestamp | Time Indicator | On |
| speed | Network Throughput | Off |
| nzb_name | NZB Tracking Name | Off |
7. Test Pipeline
๐ Dispatch Test Alert: Generates transient test profile, formats mock payloads customized to platform rules, transmits to target, returns confirmation popup.
Part 10a: Settings โ Provider
Settings โ Provider
The Provider panel houses Usenet network connection profiles, managing news server configurations and balancing outbound upload pipelines alongside inbound file retrievals.
1. Overview
- Top Area: Central grid sorting active server accounts.
- Bottom Setup Form: Profile field creation controls.
- Action Bar: Grid maintenance + connection test triggers.
2. Provider Account Matrix
| Column | Description |
|---|---|
| Name | Account display name (double-click for inline edits) |
| Host | NNTP endpoint domain address (inline editable) |
| Port | Connection port (inline editable) |
| SSL | Enforces SSL/TLS communication (inline editable) |
| Connections | Allocated connection slots (inline editable) |
| Speed Limit | Velocity caps in KB/s. 0 = unlimited |
| Usage Mode | Dropdown: Both / Upload / Download |
| โ Delete | Drop selected account record |
3. Account Configuration Form
| Field | Default | Description |
|---|---|---|
| Account Name | โ | Account tag label โ Required |
| Host | โ | Destination address (e.g., news.provider.com) โ Required |
| Port | 563 | Target port (1โ65535) |
| Username | โ | Authorization name |
| Password | (Masked) | Authorization key |
| โ Enforce SSL | Checked | Enforces SSL/TLS connections |
| Connection Limit | 10 | Simultaneous connections (1โ100) |
| Speed Throttle | Unlimited | Throttling in KB/s (0 disables) |
| Connection Routing | Both | Directs: Both / Upload Only / Download Only |
4. Connection Test
๐ Verify Server Connection: Automated connectivity diagnostic:
- Formulate account mapping โ Query nntplib โ Inject SSL handshake
- Open TCP channel โ Measure latency (ms) โ Return welcome headers
Exceptions stop execution and redirect raw feedback to diagnostic boxes.
Part 10b: Settings โ Upload
Settings โ Upload Settings
The Upload Settings manager handles configuration profiles for outbound compression, metadata recovery, and execution layer optimization.
1. Overview
- Upper Ribbon: Expert Mode toggle + factory reset.
- Standard Grid: Three-column parameters for day-to-day settings.
- Expert Grid: Advanced settings in purple accent boxes (Expert Mode only).
2. Standard Settings
2.1 General Application Behavior
| Setting | Default | Description |
|---|---|---|
| Application Language | English | Dropdown: German, English, Spanish, French, Italian, Dutch, Russian |
| ๐ Reload Interface | โ | Restarts GUI to populate updated translations |
| โ Launch at System Boot | Unchecked | Maps hooks to system startup |
| โ Minimize to System Tray | Unchecked | Minimize to tray instead of closing |
| โ Launch in Tray Hidden | Unchecked | Forces boot in hidden tray state |
| NZB Output Path | ~/.zenith-uploader/nzb/ | Output folder for finalized NZB listings |
| Mappings Save Folder | ~/.zenith-uploader/mappings/ | Output for indexing database maps |
| Temporary Cache Directory | ~/.zenith-uploader/tmp/ | Workspace for packing and encoding |
2.2 Processing Engine Pipeline
| Setting | Default | Description |
|---|---|---|
| Task Processing Mode | Sequential | Sequential / Pipelined |
| Upload Execution Sorting | FIFO | FIFO / First Compressed (Pipelined only) |
| Parallel Task Threshold | 1 | Max concurrent workers (1โ20; Sequential only) |
| โ Enforce Task Re-Uploads | Unchecked | Forces raw transfers, skipping duplicate checks |
| Global Archive Attachments | โ | Appends specified file extensions to every upload |
Pipeline Modes: Sequential completes each task before starting the next. Pipelined runs compression on upcoming jobs while uploading active payloads. DiskGuard monitors storage consumption.
2.3 Disk Guard
| Setting | Default | Description |
|---|---|---|
| โ Enforce Disk Guard | Checked | Continuous drive storage monitoring |
| Processing Halt Floor | 20 GB | Free space requirement (1โ500 GB) |
| Emergency Cut-off | 90% | Hard capacity limit (50%โ99%) |
| โ Active RAM Cache | Checked | Maps temp to memory (tmpfs on Linux /dev/shm) |
| โ Exclude Hard Drive Fallbacks | Unchecked | Wait for memory instead of falling back to disk |
| โ File Stability Check | Checked | 5-second I/O hold to guarantee files finish copying |
2.4 Cleanup Operations
| Setting | Default | Description |
|---|---|---|
| โ Purge Temporary Archives | Checked | Deletes intermediate 7z volumes after upload |
| โ Purge Local Source Files | Unchecked | Deletes original files from host post-upload |
| โ Auto-Clear Dashboard Rows | Unchecked | Removes task items 5 seconds after success |
| Log Retention Scope | 7 Days | Log file lifetime (1โ365 days) |
2.5 Process Priority
| Level | Description |
|---|---|
| Low | Background processing, preserves UI responsiveness |
| Normal | Standard priority. Recommended for daily operations |
| High | Boosted encoding speeds. Requires root on Linux |
| Maximum | Dedicated processing assets. Requires root privileges |
3. Expert Settings (Purple Accent Box)
3.1 7-Zip Compression
| Setting | Default | Description |
|---|---|---|
| Password Method | Auto | Auto (random per task) / Manual (static key) |
| Key Character Length | 16 | Generation length (4โ16 characters) |
| โ Include Alphabetic | Checked | Adds text strings to random generation |
| โ Include Numeric | Checked | Adds integers to random generation |
| โ Include Special Symbols | Unchecked | Adds special characters to generation |
| Fixed Password | โ | Static password under manual mode |
| Compression Engine | LZMA2 | LZMA2 / LZMA / PPMd / BZip2 |
| Compression Tier | 0 (Store) | Store (0) up to Ultra (9) |
| Dictionary Cap | 32 MB | Data allocation (64 KB โ 1532 MB) |
| Word Size | 32 | Verification frame (8โ273) |
| โ Solid Archive Units | Checked | Unified bit-allocation frameworks |
| Volume Split Method | Auto | Auto / Custom (Fixed MB) / Divider (Split Counts) |
| Custom Volume Size | 100 MB | Fixed chunk allocations (10โ4096 MB) |
| File Divider | 40 Parts | Uniform piece count (2โ999) |
| โ Encrypt Headers | Checked (Locked) | Hardcoded header encryption |
3.2 ParPar Metadata Recovery
| Setting | Default | Description |
|---|---|---|
| Parity Redundancy | 10% | Parity volume (1%โ100%) |
| Recovery Block Sizes | Auto | Auto or scaled 128 KB โ 4 MB |
| Block Distribution | pow2 | pow2 / uniform / equal |
| Processing Threads | Auto | Encoding worker tasks (0โ32) |
3.3 NNTP Network Tuning
| Setting | Default | Description |
|---|---|---|
| Article Block Size | 768000 bytes | Packet size (100,000โ800,000 bytes) |
| Global Newsgroup Indices | โ | Target binaries lists (Enter to save) |
| โ Obfuscate Headers | Checked | Randomize article subjects |
| Verify Connections | 0 (Disabled) | Parallel validation slots (0โ10) |
| โ Randomize Identity | Checked | Anonymous identifiers in headers |
| Manual Identity Address | โ | Custom placeholder mail string |
| Poster Identifier Tag | โ | Branding tags in NNTP headers |
Part 10c: Settings โ Download
Settings โ Download Settings
The Download Settings workspace optimizes downstream bandwidth, file system cache parameters, and multi-part archive assembly processing.
1. Overview
Five component clusters in a two-column framework: - Folders & System Workspace - Unpacking Engine Pipeline - Network Connection Parameters - Disk Guard Safeties - Mirror Mode Pipelines
2. Folders & System Workspace
| Setting | Default | Description |
|---|---|---|
| Destination Path | ~/Downloads/ | Folder for assembled extraction payloads |
| Work Cache Directory | ~/.zenith-uploader/dl_temp/ | Active multi-part segment processing |
| โ Purge Temporary Archives | Checked | Clears split archive parts after unpacking |
| โ Purge NZB Origin Files | Unchecked | Clears NZB files after extraction |
| Central NZB Cache Folder | ~/.zenith-uploader/nzb_cache/ | Active download metadata profiles |
| โ Sanitize Download Titles | Unchecked | Normalizes folder names from archive metadata |
| โ Append Password to File | Checked | Appends decryption keys in {{password}} format |
| โ Monitor Clipboard Links | Checked | Captures incoming NZB URLs or NZBLNK items |
3. Unpacking Engine Pipeline
| Setting | Default | Description |
|---|---|---|
| โ Auto-Extract Archives | Checked | Launches 7z/RAR extraction upon assembly |
| โ Lazy PAR2 Recovery | Checked | Defers parity downloads unless corruption detected |
| โ Validate yEnc CRC | Checked | Integrity scanning of yEnc checksums |
| โ Auto-Clear Task Rows | Unchecked | Removes completed rows after 5 seconds |
| โ Strip Junk Assets | Unchecked | Purges text files, URLs, shortcuts post-unpacking |
Junk Extension Selector: โ .txt, โ .html, โ .url, โ .nfo, โ .info (Individual filters grayed out until main toggle enabled).
4. Network Connection Parameters
| Setting | Default | Description |
|---|---|---|
| Max Connection Allocation | Auto (Provider) | Connection limits per profile (0 = account values) |
| Bandwidth Caps | Unlimited | Incoming speed caps (0โ10,000 MB/s) |
| Segment Retries | 3 | Retry passes per failed block (0โ20) |
5. Disk Guard (Downstream)
| Setting | Default | Description |
|---|---|---|
| โ Enforce Downstream Guards | Checked | Monitors download drives for capacity |
| Emergency Limit | 80% | Hard stop threshold (50%โ99%) |
| Safe Operations Floor | 10 GB | Space requirement before pausing (1โ500 GB) |
Tip: Map downstream limits 10% lower than upload guards (e.g., Uploads 90% โ Downloads 80%) to ensure download tasks never consume temporary cache headroom required for active uploads.
6. Mirror Mode
| Setting | Default | Description |
|---|---|---|
| โ Enforce Mirror Cleanup | Unchecked | Deletes broken extractions to prevent loop errors |
Enabling this flag clears corrupted archives from disk, preventing watchfolder scrapers from reprocessing failed packages. Disabling leaves defective data intact for manual troubleshooting.
Part 10d: Settings โ Watch Folders
Settings โ Watch Folders
The Watch Folders interface configures automated directory polling loops. The engine captures new files placed inside monitored locations and queues them for processing.
1. Overview
- Header Ribbon: Titles + dynamic counters (e.g., "3 / 10 Folders Monitored").
- Context Explanations: Short guides on automation rules.
- Directory Roster: Configured folders as actionable cards.
- โ Add Monitored Path Button: Launches directory browser.
2. Directory Monitor Cards
2.1 Interface Components
- Directory Label: Bold target folder name.
- Complete Path: Grayed out system path reference.
- Newsgroup Chips: Active index destinations as horizontal chips.
- Routing Dropdown: Combo box managing target binaries.
- โ Status: Green = active, Yellow = paused, Red = missing directory.
- โ Remove: Deletes monitoring configuration.
2.2 Status Verification
| Color | State | Description |
|---|---|---|
| โ Green | Active | Directory exists and poll verification ready |
| โ Yellow | Standby | Path disabled by user actions |
| โ Red | Fault | Path missing, unmounted, or blocked by privileges |
3. Newsgroup Category Allocations
- Supports multi-group posting rules per folder.
- Clicking chip X nodes drops newsgroup from the profile.
- "No Target Newsgroup" disables public posting for the path.
- Adding standard targets removes active
__none__restrictions. - Unconfigured folders default to global settings.
Configuration Schema:
{
"/home/user/Videos/Upload": ["alt.binaries.boneless", "alt.binaries.misc"],
"/home/user/Private/Backup": ["__none__"]
}
4. Adding Watch Folders
- Click "๏ผ Add Monitored Path".
- System folder picker maps target filesystem paths.
- Filters check against existing records to block duplicates.
- Maximum 10 entries. Cap disables addition buttons.
- Changes trigger automated watchdog engine reloads.
5. Removing Watch Folders
- Clicking X removes entry rows.
- Clears configuration from
watch_foldersfiles. - Cleans up status histories in
watch_folders_disabled. - Removes records from
watch_folder_newsgroups. - Triggers live engine reloads to stop monitoring instantly.
6. Dashboard Synchronization
Toggle switches on the main dashboard write to watch_folders_disabled configuration. Components reload and sync when users navigate back to settings.
License
The License tab controls authorization activations, displays active license validity metrics, and manages device HWID allocation during equipment replacement cycles.
1. Overview
- Header โ Title and scope
- License Badge โ Status display banner
- Activation Card โ Form inputs validating product tokens
- Licensing Utilities โ 3 system operations cards
- Demo Boundaries โ Visible to unauthenticated instances only
- Feature Privileges โ Detailed list of unlocked premium assets
2. Licensing Tiers
| Tier | Badge | Styling | Access |
|---|---|---|---|
| DEMO VERSION | โ | Amber Yellow | Restricted task capacities and file processing limits |
| FULL VERSION | โ | Bright Green | Infinite unthrottled operations |
3. License Badge Card
- Large badge icon reporting current state.
- Demo: "Restricted system operations โ Upgrade to unlock infinite throughput."
- Full: "All premium features unlocked โ Lifetime infinite tier active."
- Expiration: Reports end timestamps, โ Unlimited, or โ (demo).
4. Registration & Key Activation
| Element | Description |
|---|---|
| Input Box | Monospace, restricted to: XXXX โ XXXX โ XXXX โ XXXX |
| ๐ Activate Key | Triggers validation: license.activate(key) |
Workflow: Input Key โ Execute license.activate(key) โ Query Validation Endpoint โ Invalid: Error dialog / Valid: Write to config โ Prompt reboot.
5. Licensing Utilities
5.1 ๐ Reset Hardware Identity (HWID Reset)
Resets registration tracking hardware keys to permit migration to alternative workstations. Raises security verification alert. Dispatches license.reset_hwid.
5.2 โ Deactivate Device License
Strips licensing authorizations from local equipment. Returns to Demo mode post-reboot. Crimson red button styling.
5.3 ๐ Capture System HWID
Copies raw computed hardware identification hash to system clipboard via QApplication.clipboard.setText(license.hwid).
6. Demo Limitations (DEMO Only)
An amber warning banner lists restrictions: - ๐ฆ File Cap: Maximum 1 GB per execution batch. - ๐ Queue Counter: Maximum 10 upload tasks per day. - ๐ท Branding Injection: Injects branding markers in outbound NNTP headers. - External URL: โ zenith-uploader.com upgrades portal.
7. Unlocked Features (Full Version Only)
A green checklist summarizes active feature sets: - โ Unrestricted processing capabilities. - โ Anonymous outbound metadata (zero branding injections). - โ Dynamic performance profiles without speed limits. - โ Full VPN Guard & Kill-Switch controls. - โ High-priority customer support routing.
Support & Diagnostics
The Support tab provides real-time system performance insights, environment parsing tracking logs, and automated assistance report submission toolkits.
1. Overview
- Header โ Metadata + version index tags (e.g., v1.0.0)
- System Status Roster โ 4 horizontal analytical modules
- Application Log Viewer โ Live console with query filtering
- Quick Assistance Actions โ 4 quick-launch help cards
- Footer Links โ Support mail + website routes
2. System Status Roster
| Module | Icon | Data Source |
|---|---|---|
| Operating System | ๐ฅ | platform.system / distro |
| Python Runtime | ๐ | platform.python_version |
| Memory Allocation | ๐พ | psutil.virtual_memory |
| CPU Thread Count | โก | os.cpu_count |
| Platform | Output Format |
|---|---|
| Linux | distro.name distro.version |
| Windows | Windows platform.version |
| macOS | macOS mac_ver |
3. Application Log Viewer
3.1 Toolbar
| Component | Description |
|---|---|
| ๐ App Logs | Left-aligned console label |
| ๐ Search Filter | Case-insensitive substring filtration |
| Severity Dropdown | All Levels / INFO / WARNING / ERROR / DEBUG |
| Line Counter | Parsed records count (e.g., "Viewing 452 Rows") |
3.2 Console Parameters
- Source:
~/.zenith-uploader/logs/zenith.log - Buffer Limit: 1000 most recent entries
- Auto-Refresh: Every 10 seconds via QTimer
- Font: JetBrains Mono 10pt (fallback: Consolas)
- Scroll: Snap-to-bottom on update
3.3 Severity Color Mapping
| Severity | Color |
|---|---|
| CRITICAL | Bright Neon Red |
| ERROR | Light Red |
| WARNING | Amber Yellow |
| INFO | Light Cyan |
| DEBUG | Muted Gray |
3.4 Console Navigation Bar
| Button | Action |
|---|---|
| ๐ Reload Buffer | Reloads log files, bypassing polling timers |
| โฌ Snap to Top | Jumps to top of logs |
| โฌ Snap to Bottom | Jumps to end of logs |
| ๐ Capture Stream | Copies log entries to clipboard |
| โ Errors Only | Enforces strict ERROR category filter |
| โ Autorefresh | Green badge confirms active 10s parsing |
4. Quick Assistance Actions
4.1 ๐ Bug Report Compilation
- Writes log directory paths to clipboard.
- Launches file manager on support directories.
- Opens default mail client with pre-populated template.
4.2 ๐ Open Log Directory
Opens ~/.zenith-uploader/logs/ in native file explorer. Auto-creates missing directories.
4.3 ๐ Capture Log Path
Copies absolute filesystem path to system clipboard.
4.4 ๐ Capture Environment Diagnostics
Copies formatted system info text:
Zenith Uploader โ System Environment Diagnostic Data Map
======================================================
Host OS Platform: [OS]
Python Runtime Version: [Version]
Available Processor Threads: [Threads]
Memory Utilization: [Used] / [Total] GB
Log Path: [Path]
5. Footer Links
๐ง [SUPPORT_EMAIL] ยท Documentation & Guides: zenith-uploader.com