Glances
A cross-platform curses-based monitoring tool
What it is and what it does
Glances is a Python-based system monitoring tool that runs on Windows, macOS, and Linux, providing real-time visibility into CPU, memory, disk, network, and process metrics. It presents data through a terminal dashboard (using curses), a web interface, or command-line output in multiple formats (raw, CSV, JSON). The tool supports remote monitoring via client/server mode with XML-RPC and RESTful APIs, and can export statistics to external databases and services including InfluxDB, Prometheus, Elasticsearch, and others.
You can use Glances as a standalone command-line tool, a web server for browser-based monitoring, or as a Python library by importing the GlancesAPI class to programmatically access system metrics. It includes plugins for container monitoring (Docker, LXC), temperature and fan sensors, and running processes. The architecture is plugin-based, allowing developers to add custom monitoring modules.
Use it for:
- Monitor system performance in real-time on a local machine using the terminal dashboard
- Set up remote monitoring of multiple servers via the web interface or client/server mode
- Export system metrics to time-series databases like Prometheus or InfluxDB for long-term analysis
- Embed system monitoring into Python applications via the GlancesAPI library
- Display specific metrics to stdout in CSV or JSON format for scripting and automation
- Monitor container resource usage alongside host metrics in Docker or LXC environments
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Glances is a cross-platform system monitoring tool that displays real-time CPU, memory, disk, network, process, and container metrics in a terminal dashboard or web interface.
Yes. Glances is actively maintained, has no known vulnerabilities, installs with low friction, and solves a clear problem—real-time cross-platform system monitoring. It is suitable for system administrators, developers, and end users. The LGPL-3.0-only license is permissive for use but requires source disclosure if you redistribute modifications. Install the base package for terminal monitoring, or add [web] extras for the web interface.
Install
glances on PyPI
pip
pip install glancesuv
uv add glancespoetry
poetry add glancesInstalling Glances
Before you install
Low install friction with a pure Python wheel distribution. Actively maintained with a recent release (13 days old) and strong community engagement (33364 GitHub stars). Requires Python 3.10 or later and psutil as a core dependency; on some Linux systems you may need python3-psutil or python-dev headers pre-installed.
License in practice
Licensed under LGPL-3.0-only (copyleft). You may use and modify Glances freely, but any distributed modifications must also be licensed under LGPL-3.0-only and source code must be made available.
Quickstart
pip install glances
glances
Or as a library:
from glances import api
gl = api.GlancesAPI()
print(gl.cpu["total"])
Python 3.10 or later required. On Linux, psutil may require python3-dev or python-devel headers to compile.
Verify before relying
- Whether the web interface (glances -w) requires additional dependencies beyond the base install
- Performance overhead of running Glances on resource-constrained systems
- Compatibility of remote monitoring (client/server mode) across different network configurations
Package facts
| License | LGPL-3.0-only (copyleft) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 7 — defusedxml, packaging, psutil, windows-curses, shtab, jinja2, pyinstrument |
| Maintenance | actively maintained — 13 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 117,321/month — #12,169 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: glances-4.5.6-py3-none-any.whl
Keywords: cli, curses, monitoring, system
Tags
More Monitoring packages
Wraps any iterable to display a real-time…
copyleft · top 100 on PyPI
opentelemetry-semantic-conventionsProvides generated Python code for…
permissive · top 100 on PyPI
opentelemetry-sdkProvides the reference implementation of the…
permissive · top 100 on PyPI
opentelemetry-apiProvides the abstract API and interfaces for…
permissive · top 100 on PyPI
opentelemetry-exporter-otlp-proto-httpExports OpenTelemetry observability data to an…
permissive · top 1,000 on PyPI
opentelemetry-instrumentationProvides automatic instrumentation commands and…
permissive · top 1,000 on PyPI
glances-apiA Python client library for querying system…
permissive · top 15,000 on PyPI
psutilpsutil retrieves real-time information about…
permissive · top 1,000 on PyPI
nvitopInteractive terminal-based viewer for NVIDIA…
copyleft · top 15,000 on PyPI
archspecArchspec provides APIs to detect, query, and…
permissive · top 15,000 on PyPI
flowerFlower is a web-based monitoring and management…
permissive · top 5,000 on PyPI
mozsystemmonitorMonitors system resource usage by wrapping…
copyleft · top 15,000 on PyPI
supervisorSupervisor is a client/server system that…
permissive · top 5,000 on PyPI
opentelemetry-instrumentation-system-metricsCollects system performance metrics (CPU,…
permissive · top 5,000 on PyPI
dumb-initdumb-init is a minimal init system that runs as…
unclear · top 15,000 on PyPI
mssCaptures screenshots from one or all monitors…
permissive · top 5,000 on PyPI