# wavesurfer.js 8.0.0-beta.2 - Product: wavesurfer.js (https://whatsnew.fyi/product/wavesurfer-js) - Vendor: katspaugh - Date: 2026-07-30 - Version: 8.0.0-beta.2 - Original notes: https://github.com/katspaugh/wavesurfer.js/releases/tag/8.0.0-beta.2 - Permalink: https://whatsnew.fyi/product/wavesurfer-js/releases/8.0.0-beta.2 - Labels: Pre-release What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **changed** — Refactor plugin API to functional style with scope-owned teardown, porting six plugins to the new system - **changed** — Implement declarative load and viewport handling with per-load Scope, loadPhase/visibleRange signals, pure canvas plan, and FrameScheduler - **changed** — Unify Spectrogram implementation and enforce Scope lint - **fixed** — Fix memory leaks across core and plugins with Scope and signal foundation improvements * 8.0.0-beta.2 * chore: remove internal planning artifacts (docs/ is gitignored) * refactor: Post-refactor cleanup (#4346) * refactor: Spectrogram unification + GC leak harness + Scope lint enforcement (#4344) * docs: add digital ocean referral link * refactor: definePlugin: functional plugin API with scope-owned teardown; six plugins ported (#4342) * Declarative load & viewport: per-load Scope, loadPhase/visibleRange signals, pure canvas plan, FrameScheduler (#4341) * fix: Leak fixes across core and plugins + Scope/signal foundation (#4340) --- [![npm](https://img.shields.io/npm/v/wavesurfer.js)](https://www.npmjs.com/package/wavesurfer.js/v/8.0.0-beta.2)