This is a full-stack, self-hosted satellite ground station, not a data-research repository, though it contains substantial orbital-data ingestion, telemetry parsing, and signal-processing components. The application connects software-defined radios (RTL-SDR, Airspy, UHD, SoapySDR, SDRplay) to a real-time web UI for satellite tracking, hardware control, IQ/waterfall visualization, demodulation, decoding, recording, and observation scheduling. The backend is Python with FastAPI/Socket.IO, SQLAlchemy/Alembic, multiprocessing workers, and pub/sub broadcaster components; the frontend is React/Redux Toolkit/Material-UI. The user-facing system manages rotators and rigs via Hamlib, propagates TLE/OMM orbital elements, predicts passes, applies Doppler correction, schedules automated observations, and exposes file browsing, telemetry analysis, and audio transcription through external AI providers.
wttr.in is a production-grade weather forecast service accessible via HTTP, designed primarily for terminal use with `curl`. It provides weather reports in multiple formats: ANSI-colored text (v1 and v2 views), plain text, JSON (j1/j2), Prometheus metrics (p1), HTML, and PNG images. The service automatically detects the user's location via IP geolocation (MaxMind GeoIP2) or explicit city/airport/coordinate queries, then fetches weather data from WorldWeatherOnline (the only actively configured data source). The architecture is a single Go binary with embedded assets (fonts, translations, templates) and a pipeline of interfaces: query parsing, location resolution, weather fetching, caching, rendering, and formatting. It supports 74 languages with per-language translation files and a rule-based routing system for selecting views and output types. The codebase demonstrates solid engineering with interface-based design, multiple caching layers (LRU in-memory, disk-based, SQLite-backed location cache), and request coalescing to prevent thundering herd on upstream APIs. However, it shows signs of technical drift: reliance on a single external weather API, hardcoded paths in configuration, disabled linters, and incomplete translations. The project is actively maintained with a large user base and extensive integration documentation for tools like tmux, Waybar, Emacs, and Google Sheets.
wthrr-the-weathercrab is a terminal-based weather companion written in Rust. It fetches current weather, hourly/daily/weekly forecasts, and historical data from the Open-Meteo API. The application supports configurable units, localization (via Google Translate API), and multiple display styles (border styles, graph types, color themes). It uses a modular architecture with clear separation of concerns: API abstraction, CLI argument parsing, configuration management, weather data fetching, and terminal rendering. The codebase demonstrates solid Rust practices including async/await, derive macros, and comprehensive testing. Notable features include a sophisticated Unicode graph renderer for temperature trends and a flexible localization system that can auto-translate strings. The project is actively maintained with recent commits and a responsive issue tracker.
This repository implements a WeatherStar 4000+ simulator web application that recreates the nostalgic Weather Channel display from the 1990s. It fetches live weather data from NOAA's api.weather.gov, radar.weather.gov, and SPC outlook services, then renders it through a retro-styled single-page application with CRT scanlines, custom fonts, and animated icons. The architecture is a Node.js/Express server (or static nginx deployment) with a built-in caching proxy that reduces API load, plus a client-side module system for weather displays (current conditions, forecasts, radar, alerts, almanac, travel forecast, etc.). Key entry points are index.mjs (server) and server/scripts/index.mjs (client bootstrap). Data flows from NOAA APIs through the proxy to the client, augmented with precomputed city/station JSON files for location lookup. External dependencies include NOAA API endpoints, ArcGIS geocoding, and Mesonet radar tiles. The codebase demonstrates solid engineering with modular utilities, a generic settings system, and a well-structured build pipeline (Gulp, Webpack, SASS). However, it is tightly coupled to specific NOAA APIs and relies on static data files that require manual regeneration, introducing moderate technical drift risk.
graph_weather is a research-oriented deep learning library for weather forecasting with graph neural networks. It implements multiple model families—GraphCast-inspired encoder/processor/decoder models, the diffusion-based GenCast and GenDA, the ensemble FGN, WeatherMesh, Aurora, FengWu-GHR, and CaFA—along with a substantial set of data loaders, loss functions, training scripts, and evaluation utilities. The package is structured as a Python library with HuggingFace Hub model integration, PyTorch Lightning training support, and a comprehensive test suite, giving it a hybrid character: it is fundamentally research code, but packaged and tested with application-grade discipline. Entry points include GraphWeatherForecaster, GraphWeatherAssimilator, WeatherStationReader, and various dataset classes, while training scripts live under train/.
wego is a terminal weather client that fetches data from multiple weather APIs and displays it in various formats. It features a plugin architecture that allows easy addition of new backends (weather data sources) and frontends (output formats). The application handles configuration via environment variables, config files, and command-line flags, with caching to reduce API calls.
This repository provides 40+ icon pack libraries for WPF (and UWP) applications under the MahApps.Metro ecosystem. The core architecture defines base classes (PackIconControlBase, PackIconDataFactory, converters) that each icon pack extends with auto-generated code: an enum of icon identifiers (e.g., PackIconFontAwesome6Kind), a PackIcon control, markup extensions, and converters. Icon path data is embedded as JSON resources and loaded via a singleton factory. The code is predominantly auto-generated from upstream icon sets (Font Awesome, Material Design, Bootstrap, etc.), leading to a highly repetitive structure across packs. The library is actively maintained with recent commits, CI/CD pipelines, and semantic versioning. While the code is well-organized and functional, the heavy reliance on code generation reduces craftsmanship in the per-pack files; the genuinely reusable components are the base classes in the Core project, which implement icon scaling, flip, rotation, spin animation, and data loading patterns.