Hearthstone Deck Tracker is a Windows desktop companion application for the digital card game Hearthstone. It reads the game's log files and memory (via HearthMirror) to reconstruct real-time game state, providing an in-game overlay that displays the player's deck, opponent's known cards, draw probabilities, card generation predictions, and various counters for in-game effects. It also offers deck management (import/export, editing, versioning), match history and statistics, and integration with HSReplay.net for cloud sync, replays, and premium features like mulligan guides and arena drafting assistance. The application follows a custom MVVM (Model-View-ViewModel) architecture using .NET Framework and XAML for the UI. The core game state engine is driven by log watchers and handlers that parse Hearthstone's power log, while memory reading provides additional data like the player's collection and current deck. The overlay system consists of multiple transparent windows that can be configured per game mode (Constructed, Arena, Battlegrounds, Mercenaries). A plugin system allows third-party extensions, and an auto-updater (Squirrel) handles distribution. Key entry points include the main application window (App.xaml.cs), the log watcher manager (LogWatcherManager), the scene handler that transitions between game modes, and the various overlay view models. Data flows from log files and memory into a shared game state object, which is then consumed by counters, effect trackers, and UI components. External dependencies include HearthDb (card database), HearthMirror (memory reading library), HSReplay.net APIs, and the Hearthstone game client itself. The codebase is large and actively maintained, with frequent updates to support new Hearthstone expansions and game modes. However, it carries significant technical debt: heavy use of hardcoded card IDs, brittle regex-based log parsing, a custom UI framework that diverges from standard .NET patterns, and deep coupling to game-specific mechanics. While functional and feature-rich, the architecture shows signs of organic growth rather than deliberate design, making isolated reuse of components challenging without adaptation.
RSSDP is a .NET library implementing the Simple Service Discovery Protocol (SSDP) for UPnP device discovery and advertisement. The library enables applications to discover network services and advertise their own services on local networks using UDP multicast communication. It provides a clean separation of concerns with distinct components for device discovery (SsdpDeviceLocator), device publication (SsdpDevicePublisher), and network communication handling (SsdpCommunicationsServer). The library follows .NET best practices with interface-based dependency injection, proper IDisposable implementation, and event-driven architecture for device lifecycle events. It supports multiple .NET platforms including .NET Framework 4.8+, .NET 6/8+, .NET Standard 2.0, and Xamarin platforms via MAUI. The repository includes comprehensive unit tests, sample applications (console, MAUI, UWP), and generated documentation via DocFX.
This repository is a community-driven collection of programming exercise solutions, organized as a numbered roadmap (00 to 50) covering fundamental to intermediate topics. Each exercise is solved in multiple programming languages (Python, JavaScript, Java, C++, Go, Kotlin, etc.) by different contributors. The code consists of standalone scripts that demonstrate language features such as recursion, data structures, exception handling, async programming, regular expressions, design patterns (Singleton, Decorator), and SOLID principles. The repository is not a cohesive application or library; it is an educational resource for learning and practicing programming concepts across languages. The quality of solutions varies widely, with some files containing errors or being incomplete. The project relies on community contributions and lacks centralized testing or dependency management.