JABSysCheck · v1.0 · Setup Guide

System diagnostics,
step by step.

JABSysCheck runs two things on your machine: a PowerShell collector that snapshots hardware and health every 30 seconds, and a Node.js server that exposes that data to the editorial dashboard — accessible from any browser on your network.


Prerequisites

Platform
Windows 10 / 11
PowerShell
5.1 or newer
Node.js
18 or newer
Node.js — if you don't have it, download from nodejs.org. PowerShell 5.1 ships with Windows 10/11 — no install needed.

1.
Download JABSysCheck

Download the zip from the toolkit page. Extract it anywhere — a folder like D:\Tools\jabsyscheck works well.

↓ Download jabsyscheck-v1.zip
2.
Install dependencies

Open a terminal in the extracted folder and run:

npm install

This installs Express — the only dependency. Takes a few seconds.

3.
Start the collector

Right-click JABSysCheck.ps1 and choose Run with PowerShell as administrator — or run it from an elevated terminal:

powershell -ExecutionPolicy Bypass -File JABSysCheck.ps1

The collector self-elevates if it detects it's not running as administrator. It writes C:\JABSysCheck\data.json every 30 seconds. Leave this window open — closing it stops collection.

First run: Windows may ask you to allow the script to run. Confirm the UAC prompt, then the collector window will confirm it's running with output like [16:42:08] snapshot ok.
4.
Start the API server

In a second terminal in the jabsyscheck folder:

npm start

You'll see:

JABSysCheck dashboard → http://localhost:3847 api → http://localhost:3847/api/data

The server reads data.json on each request — no restart needed when the collector updates the file.

5.
Open the dashboard

Two ways to view your data:

http://localhost:3847

— or open jabsystems.io/jabsyscheck in any browser. When the local server is running, the hosted dashboard connects automatically and refreshes every 30 seconds.

Remote access: to monitor from another device on your network, edit server.js and change '127.0.0.1' to '0.0.0.0', then open http://<your-local-ip>:3847 from the other device.

What it tracks

I. Hardware

  • CPU name · cores · clock · load
  • RAM slots · capacity · speed · vendor
  • GPU · VRAM · driver · resolution
  • Physical disk health & volumes

II. System

  • Network adapters · link speed
  • WiFi SSID & signal strength
  • Active power plan
  • Last boot · uptime in days

III. Health

  • Top 10 processes by memory
  • Top 10 processes by CPU time
  • Flagged conflict-prone services
  • Defender real-time status

Flagged services

The collector watches for services that are commonly "noisy" or conflict-prone on enthusiast machines. If any are running, they appear under section VII Health:

Killer Network Service · Killer Wireless · GameFirst ASUS · Armoury Crate · ArmouryCrate McAfee · Norton · NortonSecurity

Data shape — data.json

The collector writes a single JSON object. Top-level keys:

{ "generated_at": "2026-05-25T16:42:08.000Z", "system": { "hostname", "username", "os_caption", "os_version", "os_build", "manufacturer", "model" }, "cpu": { "name", "cores", "threads", "max_clock_mhz", "current_load", "socket" }, "ram": { "total_gb", "used_gb", "free_gb", "usage_percent", "slots": [...] }, "gpu": [ { "name", "vram_gb", "driver_version", "driver_date", "resolution", "refresh_hz" } ], "storage": { "physical": [...], "volumes": [...] }, "network": { "adapters": [...], "wifi": { "ssid", "signal_percent", "connected" } }, "power_plan":{ "name", "is_ultimate" }, "processes": { "by_memory": [...], "by_cpu": [...] }, "services": { "flagged": [...] }, "defender": { "real_time_protection", "antivirus_enabled", "signature_age_days", "engine_version" }, "uptime": { "last_boot", "uptime_days", "uptime_hours" } }
Open dashboard → ↓ Download .zip Back to toolkit