whatisgithub

What is visdom?

fossasia/visdom — explained in plain English

Analysis updated 2026-06-24

10,257PythonAudience · researcherComplexity · 2/5Setup · easy

In one sentence

Visdom is a browser-based dashboard for monitoring machine learning experiments in real time, letting you push charts, images, and metrics from your training code to a live web interface.

Mindmap

mindmap
  root((repo))
    What it does
      Live chart updates
      Image display
      Experiment tracking
      Remote viewing
    Tech Stack
      Python client
      JavaScript server
      PyTorch friendly
    Use Cases
      Model training monitor
      Experiment comparison
      Team dashboards
    Audience
      ML researchers
      Data scientists
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Watch loss and accuracy curves update live in a browser while a model trains on a remote server

USE CASE 2

Compare results from multiple training runs side by side in the same dashboard using environments

USE CASE 3

Display grids of sample images from your dataset or model output during training without saving files

USE CASE 4

Add interactive buttons to your training UI to trigger actions like saving checkpoints mid-run

What is it built with?

PythonJavaScriptLuaPyTorch

How does it compare?

fossasia/visdomjsvine/pdfplumberlightricks/ltx-video
Stars10,25710,25910,252
LanguagePythonPythonPython
Setup difficultyeasyeasyhard
Complexity2/52/54/5
Audienceresearcherdatadeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 30min

So what is it?

Visdom is a browser-based visualization tool for data scientists and researchers who want to monitor experiments as they run. You run a small server locally or on a remote machine, and it serves a web dashboard where you can see charts, images, and text that your code sends to it in real time. The typical use case is watching a machine learning training run: as your model trains, you push metrics like loss and accuracy to Visdom, and the dashboard updates automatically so you can see progress without checking log files. The workspace is organized around "windows," which are draggable and resizable panels that each contain one plot, image, or text block. You can arrange these panels however you like, and the layout is saved across sessions. A separate concept called "environments" lets you group windows into distinct workspaces, one per experiment or project, and switch between them in the UI. Multiple environments can also be overlaid for side-by-side comparison of results from different runs. Charts can be built using many common types: line charts, scatter plots, bar charts, heatmaps, histograms, and more. Images can be sent as numpy arrays or tensors and displayed in a grid. The server can be reached from any browser, so if you are running a long training job on a remote machine, a teammate can view the same dashboard by visiting the server URL. Callbacks let Python code react to things that happen in the UI, such as a button click or a key press inside an image panel. Plot parameters can also be edited live in the interface without rerunning code. The tool is maintained by the FOSSASIA open source community and supports Python through a pip-installable client library. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
I'm training a PyTorch model on a remote server. Write Python code to push loss and accuracy metrics to a Visdom server every epoch so I can monitor them in my browser.
Prompt 2
How do I create separate Visdom environments for different experiments and switch between them in the UI?
Prompt 3
Write code to send a grid of sample images to Visdom every 100 training steps to visually check what my model is generating.
Prompt 4
I want a colleague to view my Visdom dashboard remotely during training. How do I expose the Visdom server so they can open it in their browser?
Prompt 5
How do I use Visdom callbacks so that when I click a button in the dashboard, it sends a signal back to my Python training loop?

Frequently asked questions

What is visdom?

Visdom is a browser-based dashboard for monitoring machine learning experiments in real time, letting you push charts, images, and metrics from your training code to a live web interface.

What language is visdom written in?

Mainly Python. The stack also includes Python, JavaScript, Lua.

How hard is visdom to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is visdom for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.