-
Create and Activate a Virtual Environment: It's recommended to use a virtual environment to manage project dependencies.
- On Windows:
python -m venv .venv .\.venv\Scripts\activate
- On macOS/Linux:
python3 -m venv .venv source .venv/bin/activate
- On Windows:
-
Install Dependencies: Install all the required packages listed in the
requirements.txtfile.pip install -r requirements.txt
ResourceChecker/
├── main.py # entry point
├── test_structure.py # Validation test script
├── test_ui_elements.py # UI Unit Tests
├── test_language.py # Language Unit Tests
├── requirements.txt # Project dependencies
├── language_config.json # Language preference storage
├── logs/ # Generated log files
├── core/ # Core business logic modules
│ ├── __init__.py # Core package initialization
│ ├── language.py # Internationalization & language management
│ ├── system_info.py # System monitoring & process tracking
│ ├── hardware.py # CPU/GPU temperature & hardware monitoring
│ ├── network.py # Network health checking & webhook notifications
│ ├── wifi_analyzer.py # Wi-Fi analysis logic
│ ├── command_library.py # Windows command library definition
│ └── windows_utils.py # Windows specific utilities
├── gui/ # User interface modules
│ ├── __init__.py # GUI package initialization
│ ├── main_window.py # Main application window
│ ├── resource_monitor_window.py # Resource & temperature monitoring window
│ ├── network_settings_window.py # Network settings window
│ ├── stress_test_window.py # CPU stress testing window
│ ├── system_info_window.py # System specs window
│ ├── wifi_window.py # Wi-Fi Analyzer window
│ ├── webhook_settings_window.py # Webhook settings window
│ └── windows_tools_window.py # Windows Tools window
└── utils/ # Utility modules
├── __init__.py # Utils package initialization
└── logging.py # Logging, file management & auto-logging
python main.pypython test_structure.pypython test_language.pypython test_ui_elements.py- LanguageManager: Handles English/Turkish internationalization
- LANGUAGE_DICT: Complete translation dictionary
- Global instance:
language_managerfor application-wide use
- SystemInfo: CPU, memory, and network usage collection
- ProcessMonitor: Top CPU/network consuming process tracking
- HardwareMonitor: Advanced CPU temperature reading with multiple fallback strategies
- GPU monitoring: NVIDIA GPU usage and temperature via nvidia-smi (hidden console)
- Cross-platform support: Windows-focused with Linux/Mac compatibility
- NetworkHealthChecker: Multi-host network connectivity testing
- WebhookConfig: Webhook configuration management (JSON-based)
- WebhookNotifier: Microsoft Teams webhook notifications for alerts
- SystemMonitorGUI: Main application interface
- Features:
- System monitoring (CPU, RAM, Network) with Toggleable Priority.
- Top Apps Monitoring: Tracks up to 10 apps for CPU, RAM, and Network.
- Dynamic Settings: Change monitoring intervals and app counts on the fly.
- Network health connection testing & Webhook integrations.
- Integration: Launches resource monitor and stress test windows
- ResourceTempMonitorWindow: Real-time hardware monitoring
- Capabilities: CPU/GPU/RAM monitoring with temperature tracking
- Logging: Configurable interval logging with file rotation
- CPUStressTestWindow: CPU stress testing with performance scoring
- Features: Multi-core stress testing, performance metrics, duration tracking
- SystemSpecsWindow: Detailed system specifications
- Features: OS, CPU, RAM, GPU, Motherboard, Disk Usage
- Privacy: Masked IP and MAC address visibility
- Export: Copy-to-clipboard functionality
- WifiWindow: Wi-Fi Analysis tool
- Features: Real-time signal monitoring, Nearby network frequency scanner, Channel analysis, BSSID detection
- Saved Networks: View saved profiles, Reveal Passwords, Export list, Delete profiles.
- WindowsToolsWindow: System utilities and command runner
- Features: Shortcuts to Task Manager, Device Manager, Services, etc.
- Advanced Tools: Temp Cleaner, Path Environment Editor.
- Console: Expanded with 100+ Commands in 6 Categories (Network, System, Hardware, Security, Disk, Dev).
- Shortcuts: Hosts File, Firewall, Add/Remove Programs, etc. (Cleaned up redundant internal shortcuts).
- Logger: System log management with GUI integration
- NetworkLogger: Network-specific logging
- FileManager: File operations and export dialogs
- AutoLogger: Automatic periodic log saving
- For executable file:
- pyinstaller --onefile -w -n ResourceChecker main.py
- OUTPUT_PATH_FOR_EXE: dist\ResourceChecker.exe