Skip to content

9M2PJU/spiderweb

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

310 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Spiderweb Logo

9M2PJU DX Cluster Dashboard

Premium Ham Radio DX Cluster Web Viewer

AGPLv3.0 license made-with-python Bootstrap 5.3 Performance-Optimized


πŸ›°οΈ Project Overview

Spiderweb is a feature-rich, high-performance web interface for DXSpider cluster nodes. It provides ham radio operators with a stunning, real-time dashboard to monitor DX spots, analyze propagation, and track global amateur radio activity.

Note

This repository is a Fork of the original project developed by Corrado Gerbaldo (IU1BOW). This version focuses on premium UI/UX enhancements and backend scalability.


πŸš€ Performance Enhancements

In this fork, we have implemented critical optimizations to ensure a smooth experience even on heavily loaded clusters:

Feature Improvement Impact
Virtualized Fetching Background threads for RSS/ADXO Direct sub-page navigation (Zero lag)
Intelligent Caching 5-minute TTL on heavy DB queries 90% reduction in homepage load overhead
Prefix Memoization Request-local cache for CTY lookups Faster spot rendering & lower CPU usage
SQL Optimization Refined indices and subquery logic Faster search and filtering responses
Elite UI Rendering Native CSS animations & compact hero Reduced browser-side latency & high density

πŸ—οΈ Architecture

The system follows a modern WSGI-based architecture designed for high availability and low latency.

graph TD
    subgraph External_Data
        A["DXSpider Cluster (Node)"]
        B["QRZ.com / HamQSL / NG3K"]
        B1["DXNews RSS (dxnews.com)"]
    end

    subgraph Backend_Flask
        C["webapp.py (Server)"]
        D["Caching Layer (TTL/Local)"]
        E["MariaDB / MySQL"]
        F1["Background Task Manager"]
    end

    subgraph Frontend_UI
        F["Bootstrap 5.3 (Elite Tactical)"]
        G["ECharts (Live Stats)"]
        H["PWA Service Worker"]
    end

    A -- "Telnet/XML" --> C
    B -- "API/XML" --> C
    B1 -- "RSS Fetch" --> F1
    F1 -- "Async Data" --> C
    C <--> D
    C <--> E
    C -- "Jinja2 / JSON" --> F
    F --> G
    F --> H
Loading

✨ Key Features

  • Real-time Spotting: View the latest 50 spots with advanced filtering (Band, Continent, Mode).
  • Elite Tactical UI: Modern black/emerald theme with High-Density Hero Layout, integrated dual-time clocks (UTC/Local), and smooth marquee news feed.
  • Virtualized Performance: DXNews and ADXO events are fetched in the background, ensuring near-instant page transitions to Stats and Propagation pages.
  • Propagation Analysis: Integrated MUF maps, solar data from HamQSL, and ECharts-powered statistics.
  • Modern Footer: Terminal-inspired professional footer with real-time visit tracking and system stability markers.
  • PWA Support: Installable as a Progressive Web App on mobile and desktop.
  • SEO Optimized: Built-in support for sitemaps and semantic HTML.

πŸ› οΈ Quick Start

Prerequisites

  • Python 3.13+
  • MariaDB / MySQL
  • Release: v2.5.9-9M2PJU
  • DxSpider node (v1.57 build 560+)

1. Database Configuration

Edit your DXSpider local/DXVars.pm:

$dsn = "dbi:mysql:dxcluster:localhost:3306";
$dbuser = "your-user";
$dbpass = "your-password";

2. Install Dependencies

pip install -r requirements.txt

3. Build & Run

# Build web assets (Minify CSS/JS)
cd scripts && ./build.sh -r
cd ..

# Run the server
python3 webapp.py

πŸ“Š Statistics & Data Sources

Spiderweb aggregates data from multiple world-class amateur radio resources:

  • ECharts: Real-time trend analysis and heatmaps.
  • Flag-Icon-CSS: Visual country identification.
  • NG3K: Announced DX operations tracking.
  • KC2G: Real-time Maximum Usable Frequency (MUF) mapping.

πŸ“„ License

This fork is distributed under the GNU Affero General Public License v3.0 (AGPL-3.0).

Why AGPL v3.0?

We have upgraded the license from GPLv3 to AGPL v3.0 to ensure that the spirit of open-source cooperation is preserved in a network-centric world.

  • Network Copyleft: Requires modified versions of the software to provide their source code to users interacting with them over a network.
  • Transparency: Ensures that any performance optimizations or UI enhancements made to the platform are shared back with the amateur radio community.
  • Sustainability: Prevents "closed" forks of this web-based tool from being hosted as private services without contributing back.

See the LICENSE file for more details. Original Author: Corrado Gerbaldo - IU1BOW.

About

Web Interface for DXSpider hamradio cluster

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Python 42.7%
  • JavaScript 23.8%
  • HTML 18.7%
  • Shell 7.6%
  • CSS 7.2%