Skip to main content

Zero-config research workstation dashboard with automatic pipeline discovery

Project description

research-portal

PyPI version CI Python 3.10+ License: MIT

Zero-config research workstation dashboard with automatic pipeline discovery.

Drop it on any Linux research machine and instantly get live GPU/CPU monitoring, running pipeline detection, and a resource map -- no configuration needed.

Installation

pip install research-portal

Or install from source:

git clone https://github.com/ahb-sjsu/atlas-portal.git
cd atlas-portal
pip install -e ".[dev]"

Quick Start

research-portal

That's it. Open the URL printed in the terminal (default: http://0.0.0.0:8080).

Default credentials: atlas / atlas2026!research (override with env vars or CLI flags).

Screenshots

Dashboard, Resource Map, and Pipeline Flow views coming soon.

Features

  • Auto-detects hardware -- hostname, CPU model, GPU models, RAM, disk (reads from /proc, nvidia-smi, etc.)
  • Live system monitoring -- CPU temperatures, GPU utilization/memory/thermals, RAM, disk, load averages
  • Pipeline discovery -- automatically finds running Python/bash pipelines from process list
  • Resource map -- per-core CPU utilization grid with job labels, per-GPU visual bars
  • Pipeline flow -- live view of all discovered pipelines with stage progress
  • Security -- HTTP Basic auth, security headers (CSP, X-Frame-Options, etc.)
  • SSL support -- auto-detects cert.pem/key.pem for HTTPS
  • Zero config -- works on any Linux workstation out of the box

Pages

Route Description
/ Main dashboard -- temperatures, GPU status, memory, active sessions
/map Resource map -- per-core CPU grid, per-GPU utilization visuals
/flow Pipeline flow -- auto-discovered running/completed pipelines

API Endpoints

Endpoint Description
GET /api/status System metrics (CPU temps, GPUs, memory, disk, load, sessions)
GET /api/cores Per-core utilization with job labels
GET /api/pipelines Auto-discovered pipeline list with stages
GET /api/system-info Static hardware info (hostname, CPU, GPU models, RAM)

Configuration

CLI Flags

research-portal [OPTIONS]

  --host HOST       Bind address (default: 0.0.0.0)
  --port PORT       Port (default: 8443 with SSL, 8080 without)
  --no-auth         Disable HTTP Basic authentication
  --user USER       Override auth username
  --password PASS   Override auth password
  --no-ssl          Force plain HTTP even if certs are present
  --version         Print version and exit

Environment Variables

Variable Description Default
PORTAL_USER Auth username atlas
PORTAL_PASS Auth password atlas2026!research
PORTAL_SECRET Flask secret key random
PORTAL_RESULTS_DIR Directory for downloadable result files .

SSL

Place cert.pem and key.pem in the working directory or package directory. The portal will auto-detect them and serve on HTTPS port 8443.

Generate self-signed certs for development:

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes

Development

pip install -e ".[dev]"
pytest -v
ruff check src/ tests/
ruff format src/ tests/

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

research_portal-0.1.3.tar.gz (20.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

research_portal-0.1.3-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file research_portal-0.1.3.tar.gz.

File metadata

  • Download URL: research_portal-0.1.3.tar.gz
  • Upload date:
  • Size: 20.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for research_portal-0.1.3.tar.gz
Algorithm Hash digest
SHA256 f879b2d96a9e85969bfea4b2bef72ef1cfb1e544c2b758ef6c01b4e1294263fc
MD5 762f944fd1c63faa1008712fec7c1a9f
BLAKE2b-256 1b6083a7d86d127e991cbc258f1ba71c8cfd2ea8b2bc5b7c8cc0840e594277fa

See more details on using hashes here.

File details

Details for the file research_portal-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for research_portal-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9dc902d49b1956f19450c65aa202506506189ae04423b0f56e18bdd8638b794c
MD5 c67ce97c0ac61f96c12e84e45d627f83
BLAKE2b-256 7f306741f99c65198d16a4a5fa62800ba6216d82399579ab80cd4b21ad4cdabe

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page