A comprehensive Node.js library for retrieving detailed hardware, system, and OS information across multiple platforms.
Systeminformation is a lightweight, dependency-free Node.js library that provides over 50 asynchronous functions to gather detailed information about a system's hardware, operating system, and runtime environment. It solves the problem of Node.js's built-in OS module being too basic by offering a comprehensive, cross-platform interface for server-side system data collection, from hardware inventory to real-time monitoring.
Backend and server-side developers using Node.js, Bun, or Deno who need to programmatically retrieve detailed system metrics, such as those building monitoring tools, diagnostic dashboards, or system administration utilities. It is specifically designed for server-side use and will not work in a browser.
Developers choose Systeminformation for its extensive, consistent API across multiple operating systems (Linux, macOS, Windows, FreeBSD, OpenBSD, NetBSD, SunOS, and Android), its zero external dependencies ensuring lightweight integration, and its focus on server-side reliability with features like Docker integration and detailed hardware detection.
System Information Library for Node.JS
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Consistently works across Linux, macOS, Windows, FreeBSD, OpenBSD, NetBSD, SunOS, and Android, as evidenced by the detailed OS support tables in the README.
Lightweight and self-contained with no npm dependencies, ensuring easy installation and reduced risk of conflicts, highlighted by the 'no dependencies' badge.
Offers over 50 asynchronous functions for hardware inventory, real-time monitoring, OS details, and Docker integration, far exceeding Node.js's native OS module.
Frequent updates with new features and fixes, documented in a detailed changelog, and an upcoming TypeScript rewrite in version 6 shows ongoing investment.
The README explicitly states 'partial Windows support,' meaning some functions may not work or provide limited data on Microsoft platforms, a gap for full-system monitoring.
Version 5 introduced breaking changes, and version 6 promises more with a complete TypeScript rewrite, forcing developers to update code and potentially break existing integrations.
Certain features, like S.M.A.R.T disk data, require additional tools like smartmontools to be installed on the host system, adding setup complexity and potential failure points.