Metadata-Version: 2.5
Name: spl-dashboard
Version: 0.5.1
Summary: Offline, LAN-served sound-pressure-level monitor for live events; run it on the microphone computer and view the dashboard from any browser or iPad.
Project-URL: Homepage, https://github.com/ghreprimand/spl-dashboard
Project-URL: Source, https://github.com/ghreprimand/spl-dashboard
Project-URL: Issues, https://github.com/ghreprimand/spl-dashboard/issues
Project-URL: Changelog, https://github.com/ghreprimand/spl-dashboard/blob/main/CHANGELOG.md
Author: ghreprimand
License-Expression: GPL-3.0-only
License-File: LICENSE
Keywords: audio,dashboard,live-sound,measurement,sound-level-meter,sound-pressure-level,spl,umik-1
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Web Environment
Classifier: Framework :: FastAPI
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Multimedia :: Sound/Audio :: Analysis
Requires-Python: >=3.11
Requires-Dist: fastapi<1,>=0.115
Requires-Dist: numpy<3,>=2
Requires-Dist: platformdirs<5,>=4
Requires-Dist: pydantic<3,>=2.10
Requires-Dist: scipy<2,>=1.15
Requires-Dist: sounddevice<1,>=0.5
Requires-Dist: uvicorn[standard]<1,>=0.34
Provides-Extra: dev
Requires-Dist: httpx<1,>=0.28; extra == 'dev'
Requires-Dist: mypy<2,>=1.15; extra == 'dev'
Requires-Dist: pytest<9,>=8.3; extra == 'dev'
Requires-Dist: ruff<1,>=0.9; extra == 'dev'
Description-Content-Type: text/markdown

# SPL Dashboard

An offline, LAN-served sound-pressure-level (SPL) monitor for live events. You run
it on the computer that has the measurement microphone attached; it does all audio
capture, calibration and DSP locally and serves a web dashboard on your local
network. An iPad, phone or laptop browser on the same Wi-Fi views the readings —
browsers only ever receive numbers, never audio.

## Install and run

Install [uv](https://docs.astral.sh/uv/), then:

```bash
uvx spl-dashboard
```

On start it prints the local URL and the LAN URLs to open on other devices.

**Linux only:** install the PortAudio runtime first (`sudo apt install libportaudio2`
on Debian/Ubuntu). macOS and Windows get PortAudio from the `sounddevice` wheel.

## What it is (and is not)

SPL Dashboard is an operational monitor, not a compliance meter. It makes no
IEC 61672, Class 1/2, regulatory or legal claim. Absolute levels have been
compared against REW on the same microphone with matching results, but have not
been independently verified against a certified sound level meter. Use your own
judgement and your own reference for anything that matters.

## Documentation

Full documentation, screenshots, the getting-started walk-through, the calibration
guide and the troubleshooting guide live in the project repository:

- Homepage and source: https://github.com/ghreprimand/spl-dashboard

## License

Copyright (C) 2026 ghreprimand. Licensed under **GPL-3.0-only**. See `LICENSE`.
