Skip to content

HardView - Python Hardware Information Module

HardView is a high-performance, cross-platform Python module that provides detailed hardware and system information in structured JSON format. It supports both Windows (via WMI) and Linux (via sysfs/proc), and now includes advanced storage/SMART info and real-time performance monitoring.

๐Ÿ”‘ Key Features

  • ๐Ÿ–ฅ๏ธ Comprehensive Hardware Data: BIOS, System, Baseboard, Chassis, CPU, RAM, Disks, Network.
  • ๐Ÿ—๏ธ Advanced Storage & SMART: Detailed disk, partition, and SMART attributes.
  • ๐Ÿ“Š Performance Monitoring: Real-time and interval-based CPU, RAM, and system performance.
  • ๐Ÿ–ฅ๏ธ Cross-Platform: Works on Windows (WMI) and Linux (sysfs/proc).
  • โšก C Implementation: High performance native code.
  • ๐Ÿ Python Integration: Easy-to-use Python API.
  • ๐Ÿงฉ Modular Design: Extensible and well-documented.
  • ๐Ÿ“ Structured Output: All results are returned as JSON strings or Python objects.

๐Ÿ“ฆ Installation

From PyPI

pip install hardview

From Source

git clone https://github.com/gafoo173/hardview.git
cd hardview
pip install .

For supported platforms and full setup instructions, see docs/INSTALL.md.


๐Ÿš€ Usage Example

import HardView
import json

# JSON output
bios_json = HardView.get_bios_info()
cpu_json = HardView.get_cpu_info()

# Python objects output
#You must pass the parameter `false` in versions prior to 3.0.3, e.g. `HardView.get_bios_info_objects(false)`.

bios_objects = HardView.get_bios_info_objects() 
cpu_objects = HardView.get_cpu_info_objects()

# Performance monitoring
cpu_usage_json = HardView.get_cpu_usage()
ram_usage_objects = HardView.get_ram_usage_objects()

# Monitor over time
cpu_monitor_json = HardView.monitor_cpu_usage_duration(5, 1000)
ram_monitor_objects = HardView.monitor_ram_usage_duration_objects(3, 500)

# Pretty print CPU info
import pprint
pprint.pprint(json.loads(cpu_json))

๐Ÿ“– API Reference (Summary)

Function (JSON) Function (Python Object) Description
get_bios_info() get_bios_info_objects() BIOS vendor, version, release date
get_system_info() get_system_info_objects() System manufacturer, product name, UUID
get_baseboard_info() get_baseboard_info_objects() Motherboard info
get_chassis_info() get_chassis_info_objects() Chassis/computer case info
get_cpu_info() get_cpu_info_objects() Processor details
get_ram_info() get_ram_info_objects() Memory modules and totals
get_gpu_info get_gpu_info_objects() GPU information
get_disk_info() get_disk_info_objects() Storage devices
get_network_info() get_network_info_objects() Network adapters
get_partitions_info() get_partitions_info_objects() Disk partitions (advanced)
get_smart_info() get_smart_info_objects() Full disk/SMART info (advanced)
get_cpu_usage() get_cpu_usage_objects() Current CPU usage
get_ram_usage() get_ram_usage_objects() Current RAM usage
get_system_performance() get_system_performance_objects() Combined CPU/RAM usage
monitor_cpu_usage_duration(d, i) monitor_cpu_usage_duration_objects(d,i) Monitor CPU usage over time
monitor_ram_usage_duration(d, i) monitor_ram_usage_duration_objects(d,i) Monitor RAM usage over time
monitor_system_performance_duration(d,i) monitor_system_performance_duration_objects(d,i) Monitor system performance over time

๐Ÿงช Platform Support

Feature Windows Linux
BIOS Info โœ… โœ…
System Info โœ… โœ…
Baseboard Info โœ… โœ…
Chassis Info โœ… โœ…
CPU Info โœ… โœ…
RAM Info โœ… โœ…
Disks โœ… โœ…
Network โœ… โœ…
Advanced Storage / SMART โœ… ๐Ÿšซ
Performance Monitoring โœ… โœ