A fast, web-based NetCDF explorer for glider data.
Project description
Glider Playground
A fast, web-based explorer for ocean glider data. Load OG1 NetCDF files — or pull live deployments straight from BODC — and instantly plot, inspect, QC, and view them in 3D, all in your browser with no scripting required.
Live demo: glider-playground.co.uk (running on a Raspberry Pi — may be slow)
Install & Run
Download the app (easiest)
Grab the latest prebuilt desktop app — no Python or setup required:
| Platform | Download |
|---|---|
| macOS (Apple Silicon) | GliderPlayground-macOS-arm64.zip |
| Windows (x64) | GliderPlayground-Windows-x64.zip |
| Linux (x64) | GliderPlayground-Linux-x64.tar.gz |
Unzip and run it like any other app.
Unsigned builds. macOS and Windows builds aren't code-signed yet, so the OS will warn the first time you open them:
- macOS — if it says the app is unsafe or can't be opened, go to System Settings → Privacy & Security, scroll down to the Security section, and click Open Anyway. Alternatively, right-click the app → Open → Open, or run
xattr -dr com.apple.quarantine /path/to/GliderPlayground.app.- Windows — on the SmartScreen prompt click More info → Run anyway.
Or run with pip
pip install glider-playground
glider-playground
This opens the app in your browser. Press Ctrl+C in the terminal to stop it.
Virtual environment recommended. If you use one, activate it before running.
Install from source
git clone https://github.com/Orlando-PB/glider-playground.git
cd glider-playground
pip install .
Loading Data
Click the file button (top-left) to open the file panel. You can:
- Browse live BODC deployments — pull published datasets directly from the British Oceanographic Data Centre
- Add files — pick individual
.ncfiles - Add folder — load an entire folder of
.ncfiles at once
Your own files are processed once in the background. Once ready, click a file to load it.
File format: input files must be in OG1 format (or OG1-compatible) — the OceanGliders community NetCDF standard.
Live data is provided by the British Oceanographic Data Centre (BODC).
Views & Layout
Glider Playground is a flexible, multi-panel workspace — plots, the globe, and the 3D track are all panels you can arrange however you like.
- Drag a panel by its header to reorder or swap it with another
- Split any panel (the edge + buttons) to add another plot beside it
- Resize by dragging the dividers; close a panel with its ✕
- On a vertical / mobile screen the built-in presets automatically re-flow so plots sit on top and the maps share a row beneath
Presets
One click rebuilds the whole workspace:
| Preset | What you get |
|---|---|
| Map | Globe + 3D view side by side, no plot |
| Dashboard | Globe + 3D alongside a stack of thermal / chlorophyll / oxygen plots |
| Thermal, Salinity, Density, Chlorophyll, Oxygen, Backscatter, T-S Diagram, Phases | A single plot of that variable, with the globe and 3D track |
Presets pick sensible X/Y/Colour variables and skip anything the current file doesn't have.
Globe, 3D & Overlays
- Globe — the glider's GPS track on an interactive 3D globe
- 3D View — the dive track in 3D with bathymetry
- Copernicus overlays — drape satellite/model surface fields over the globe: Chlorophyll-a, Temperature, Salinity, O₂, pH, Biomass, Sea Surface Height
- Surface currents — an animated particle-flow field of Copernicus surface currents
- DAC arrows — per-dive depth-averaged current vectors, shown when the file provides them
Copernicus Setup
The surface overlays and currents are fetched live from Copernicus Marine, which needs a (free) account and a one-time login:
- Register for a free account at marine.copernicus.eu/register.
- Install the toolbox:
pip install copernicusmarine
- Log in (stores your credentials locally), then restart Glider Playground:
copernicusmarine login
Once you're logged in, the overlay layers fetch on demand. Until then the app will prompt you with whichever of these steps is missing.
Plotting & Inspecting
By default, presets drive the plots. Flip on the Advanced toggle (top bar) to take manual control — choosing X, Y, and Colour variables, plus QC, filters, phases and more.
- Box zoom — click and drag on the plot
- Axis sliders — trim the X, Y, or colour range precisely
- Inspector — hover the plot to read exact values for the nearest sample in a floating card
- Colour palette — pick from a range of oceanographic colour maps
- Reset — restore the view, overlays, and chat to a clean state
- Download — save the current plot as a PNG
Profiles
If a file contains dive profiles, a Profiles navigator appears. Step through individual profiles or cycles, filter by direction (upcast / downcast / transect), or view everything at once.
Quality Control (Advanced)
| Toggle | What it does |
|---|---|
| Apply QC | Keeps only samples whose _QC flag is in the allowed list (default 0,1,2,5,8) |
| Highlight | Shows bad-QC samples in red instead of hiding them |
| Filter Time | Drops NaT and out-of-range timestamps (pre-deployment / future dates) |
| Interpolate | Fills NaN gaps in PRES/TEMP/CNDC by time so they align with other sensors (filled points flagged QC=5) |
| Clean | Flags 0.0 fill values, auto-scales CNDC (S/m → mS/cm), and cross-flags out-of-range conductivity on the CTD triad |
Edit the QC flags chips to customise which flags count as good.
Jelly — AI Assistant
Jelly is an optional AI helper (the bubble, bottom-right). Paste an OpenAI API key and it can answer questions and drive the app for you — switch presets, build dashboards, toggle overlays, and more. The key is stored locally in a .env file and never leaves your machine.
Uninstall
pip uninstall glider-playground
License
Licensed under the Apache License 2.0.
Developed by Orlando Prugel-Bennett at the National Oceanography Centre (NOC).
© 2026 National Oceanography Centre.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file glider_playground-0.2.68.tar.gz.
File metadata
- Download URL: glider_playground-0.2.68.tar.gz
- Upload date:
- Size: 1.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3b725ccdaeccc3dd0f8ada8b73760b8b3ea0a0012c5e470e67d181dab544adeb
|
|
| MD5 |
4e2cbfc338a39106ee9d1a47611d8579
|
|
| BLAKE2b-256 |
51237d8a60d0daa21b6a3d163e0b5bbedcc2129fdf48ec3e0966dc034dedb110
|
File details
Details for the file glider_playground-0.2.68-py3-none-any.whl.
File metadata
- Download URL: glider_playground-0.2.68-py3-none-any.whl
- Upload date:
- Size: 1.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7954ee416eb7a336de17180e51f45923ad231328fc5a39c78e97ffc05fa9279a
|
|
| MD5 |
29dde96ba2c583da13433f43897e68f3
|
|
| BLAKE2b-256 |
081053072fe5a5fa2076240f5eeb69f162293fc47c976e1c0a578b6d28b81a66
|