Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

DeskTest.net

Free, open-source diagnostic tools for front-desk IT. Each tool runs in your browser: peripheral checks use your own local drivers, and network checks reach only the endpoints they name. No accounts, no tracking, no telemetry.

Live: https://desktest.net

The three rules

Every page on this site follows the same three rules:

  1. One page, one question. A diagnostic should give a clear pass or fail in under a minute. No menus, no settings panels, no decisions to make before running the test.
  2. Your data never leaves your computer. Peripheral checks happen locally against your installed drivers and services; network checks contact only the endpoints they name (public CDNs or the edge relay) to measure the connection, never your files or inputs. No backend, no analytics, no telemetry. View source to verify.
  3. No accounts, no tracking, no monetization-via-data. The trust posture is the moat. If you ever see a "sign up" or third-party script tag on this site, something has gone wrong.

Tools

Tool Path What it tests
Full Workstation Checkup /checkup/ One-click health report: browser, system, performance, network, web apps, clock - plain-language, sendable to IT
Connection Check /connection-check/ Is it your Wi-Fi, your ISP, or the service? Layered plain-language verdict (reachability, ping soak, throwaway speed bytes, cloud-app reachability, clock) + provider-ready report; edge.desktest.net only
Meeting Readiness /meeting-check/ One-click video-call go/no-go: camera, mic, speaker, echo, device selection, call-grade network; ?mode= framing (interview/telehealth/streaming/hearing/agent)
Front-Desk Station Check /station-check/ Guided checklist across check scanner, printer, signature pad, card reader, barcode scanner; one combined station report for IT
Phone Check /phone-check/ Test a phone/tablet in the browser, no app: touchscreen, motion sensors, cameras, mic, speaker, vibration; honest list of what a browser can't check (battery health, IMEI)
Display Check /display-check/ Guided full-screen screen grading: dead pixels, backlight bleed, OLED burn-in, response-time ghosting, gradient banding, plus automatic HDR + wide-gamut detection; you judge, it records and reports
Scanner Test /scanner-test/ FIS WebScan check scanner (Digital Check / Panini / etc.)
Signature Pad Test /sigpad-test/ Topaz SigWeb signature pad
PDF Test /pdf-test/ Browser PDF rendering, form fields, print
Printer Test /printer-test/ Guided printer test pattern (alignment, color, fine text)
SiteLink Test /sitelink-test/ SiteLink Web Edition / myHub browser readiness
Microphone Test /mic-test/ getUserMedia audio, level meter, playback
Recording Quality Check /recording-check/ Mic setup graded against podcast/audiobook (ACX) targets - peak level, noise floor, clipping - with plain-language fixes
Webcam Test /webcam-test/ getUserMedia video, resolution, FPS
Camera Quality Check /camera-quality/ Delivered frame rate, lighting, and backlight grading - not just advertised resolution
Speaker Test /speaker-test/ Web Audio tone in left/right channels
Echo and Latency Test /echo-test/ Speakerphone echo/feedback detection + audio round-trip latency (Web Audio chirp)
Keyboard Test /keyboard-test/ Per-key visual keymap, stuck-key detection, modifiers
Keyboard Layout Test /keylayout-test/ Keyboard-layout mismatch (US/UK/AZERTY) that types the wrong characters
Display Test /display-test/ Color patterns, dead-pixel scan, resolution
Refresh Rate Test /refresh-rate/ Monitor's actual refresh rate - catches a 144Hz panel Windows defaulted to 60Hz
Accessibility and Zoom Check /access-check/ Whether zoom, contrast, and accessibility settings reach the browser (matchMedia)
Browser Test /browser-test/ UA, security context, storage, modern API support
Cache and Update Test /cache-test/ Registered service workers and their state, cache storage, and how to force an update; read-only
Browser and OS Currency Check /currency-test/ Out-of-date or end-of-life browser / Windows build flagged as a security liability
Security Key Test /security-key-test/ FIDO2 security key (YubiKey) or platform authenticator (Windows Hello / Touch ID) via a throwaway WebAuthn credential; nothing stored or sent
System Info /system-info/ CPU, memory, GPU, display, OS, network, storage - what the browser can detect, locally
Font Presence Check /font-check/ Confirms required fonts (including MICR + barcode) are installed
Web App Readiness Test /webapp-test/ Popups, cookies, notifications, clipboard - the browser policy that blocks vendor web apps
Notification Test /notification-test/ Desktop/browser notifications: requests permission, fires a real test, catches browser-blocked + OS Focus Assist / Do Not Disturb
Clipboard Test /clipboard-test/ Copy, paste, and image-paste (RDP/Citrix/locked-down browsers); pasted content never leaves the tab
Performance Test /perf-test/ "Is this PC slow?" - CPU, rendering, memory, main-thread responsiveness
Screen Share Test /screenshare-test/ Can this machine share its screen in Teams/Zoom/Meet (getDisplayMedia)
Kiosk Readiness Check /kiosk-test/ Kiosk go/no-go: stays awake, holds fullscreen, locks down (Chromium for full lockdown)
Barcode Scanner Test /barcode-test/ USB barcode/QR scanner (keyboard-wedge): capture, symbology + check-digit, Enter-termination
Card Reader Test /card-reader-test/ USB magnetic-stripe card reader (keyboard-wedge): masked, nothing stored, nothing sent
NFC Tag Test /nfc-test/ Tap an NFC tag (review, menu, product) to confirm it reads and see what is on it; tag content stays on the device (Web NFC, Android Chrome)
Touchscreen Test /touch-test/ Touchscreen: touch registration, dead-zone mapping, multi-touch (Pointer Events)
Pen and Stylus Test /pen-test/ Pen/stylus (Wacom, Surface Pen, Apple Pencil): pressure, tilt, hover, eraser, barrel button (Pointer Events)
Call Readiness Test /call-test/ Video-call pre-flight: camera, microphone, speakers, and network latency
Device Selection Check /device-sanity/ Right mic/speaker/camera for a call: virtual-cam detection, mic-level check
Network Test /network-test/ Public CDN reachability, DNS-over-HTTPS, WebSocket egress
Speed Test /speed-test/ Real download/upload throughput (Mbps) + Teams/Zoom video-mode headroom; the bandwidth Network Test skips
Connection Stability Test /socket-stability-test/ ~45s WebSocket connection-stability watch for flaky Wi-Fi that drops long sessions
USB Device Test /usb-test/ WebUSB and WebHID chooser, device descriptor inspection
Bluetooth Test /bluetooth-test/ Pair a Bluetooth (BLE) device for web apps - hardware wallets, IoT/smart-home portals, fitness/medical apps (Web Bluetooth, Chrome/Edge)
Serial Peripheral Test /serial-test/ Receipt printer / cash drawer / pole display on a COM port (Web Serial, Chromium)
Mouse Test /mouse-test/ Pointer buttons, scroll wheel, polling rate, movement smoothness
Controller Test /controller-test/ Game controller/gamepad: buttons, sticks, triggers, D-pad, stick drift, vibration (Gamepad API)
MIDI Test /midi-test/ MIDI keyboard/pad/controller: detect connected devices, live note and control input (Web MIDI, Chrome/Edge)
WebRTC Test /webrtc-test/ STUN reachability, ICE gathering, in-page peer connection (Zoom/Teams/Meet readiness)
Proxy Test /proxy-test/ Detects a corporate proxy or TLS/SSL inspection between the browser and the internet
Clock Test /clock-test/ Flags system-clock skew that breaks HTTPS, domain logins, and 2FA
SaaS Reachability Test /saas-test/ Whether Microsoft 365, Google, Salesforce, Dropbox, DocuSign, Zoom, and Slack are reachable - down for everyone, or just your network
Email Header Check /email-check/ Local analysis of a suspicious email's headers for spoofing and phishing; nothing uploaded
Certificate Check /cert-check/ Local X.509 certificate inspection: issuer, validity, SAN, self-signed; nothing uploaded
File Hash Check /hash-check/ Local SHA-256/1/512 to verify a download against a vendor's published hash; nothing uploaded

Every tool has a companion guide at /<tool>/guide/ with detailed diagnosis explanations and IT-admin notes.

Architecture

Static HTML and JS only. No build step, no framework, no runtime backend.

desktest.net/                  # served by Cloudflare Pages
  index.html                   # hub
  404.html
  _headers                     # per-path Content-Security-Policy
  sitemap.xml
  robots.txt
  .well-known/security.txt     # security contact (RFC 9116)
  LICENSE                      # AGPL-3.0
  <tool>/
    index.html                 # the diagnostic
    app.js                     # tool-specific driver
    guide/index.html           # the guide
  about/index.html
  help/
    getting-started/index.html
    deployment/index.html
  _shared/                     # design-system reference + tool template (served, not linked)
    components.html
    tool-template/
  docs/                        # SHA-256 hashes for bundled third-party (served; guides link them)
  scripts/check_csp.py         # CSP validator, run in CI
  workers/edge/                # Cloudflare Worker (WS echo + whoami/time/reach/captive/gen/sink) - the far end for every tool and flow that measures reachability, latency, or throughput
  og.png                       # social share image

Each tool's index.html inlines its own CSS and a single <script src="app.js">. The CSP for each path is locked to whatever local origin it needs and nothing else. Trust is provable from view-source.

Every tool ships with:

  • Copy Diagnostic Report button (plain text, paste into a ticket).
  • Send to your IT button (mailto: with the report pre-filled).
  • Interactive fix checklist (click each step as you complete it).
  • Run test again button under failed verdicts.
  • White-label (optional): pass ?org=<name> and ?support=<email> to stamp the page with your organization and route "Send to your IT" to your help desk - see the deployment guide.
  • Light + dark mode (prefers-color-scheme).
  • WCAG AA accessibility baseline (aria-live, focus-visible, semantic <header>, prefers-reduced-motion).

Running locally

No build. Any static server works:

python3 -m http.server 8080

Then open http://localhost:8080. To test localhost-talking tools (Scanner Test, Signature Pad Test), you need the corresponding vendor service running on the same machine (FIS WebScan or Topaz SigWeb).

Deploying

The repo deploys cleanly to Cloudflare Pages:

  1. Connect the repo, set output directory to /, no build command.
  2. Add desktest.net as a custom domain.
  3. The _headers file is read automatically for per-path CSP.

License

Code is licensed under AGPL-3.0-or-later. See LICENSE for the full text.

This means:

  • You can use, modify, and distribute the code freely.
  • If you modify it and run it as a network service, you must offer the source of your modifications to your users.
  • Derivative works must also be AGPL.

Commercial licensing

Commercial licensing without AGPL obligations is available from the copyright holder. Contact hello@tech1k.com. This is the same code, relicensed for buyers who want to embed it in a proprietary product or who cannot accept the AGPL terms.

Third-party code

sigpad-test/SigWebTablet.js is Topaz Systems Inc. proprietary code, bundled unmodified. Topaz publishes the canonical file at http://www.sigplusweb.com/SigWebTablet.js and asks integrators not to alter it. The bundled SHA-256 is recorded at docs/sigwebtablet-sha256.txt for verification.

scanner-test/utif.js is UTIF.js (MIT, Photopea), bundled unmodified. It decodes the CCITT Group 4 TIFF images FIS WebScan returns (a format no browser renders natively) to a canvas so the scanned check can preview inline. The bundled SHA-256 is recorded at docs/utif-sha256.txt for verification.

Contributing

Pull requests welcome. Before you start, please read CONTRIBUTING.md. Contributions require a Contributor License Agreement so commercial dual-licensing remains possible.

Security issues: see SECURITY.md.

Credits

Maintained by Kristian. DeskTest.net exists because front-desk IT deserves better tools than "have you tried reinstalling the driver?"

About

Free, open-source, browser-only diagnostics for front-desk and help-desk IT: scanners, printers, signature pads, cameras, network, and the web apps staff sign into. One page, one question. No accounts, no tracking, no telemetry.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

1 watching

Forks

Contributors

Languages