The key part of your question is “make it interact with Streamlit”. For that you’ll need to use Streamlit components. I suggest you first look at this post which is the simplest possible static HTML component into which you can add the Wavesurfer.js
script: Code snippet: create Components without any frontend tooling (no React, Babel, Webpack, etc).
If that doesn’t work, then the React or React-less component implementation tutorials should show you more advanced schemes to make it work.