MCPcopy Index your code
hub / github.com/xenova/whisper-web

github.com/xenova/whisper-web @main sqlite

repository ↗ · DeepWiki ↗
109 symbols 170 edges 20 files 0 documented · 0% 12 cross-repo links
README

Whisper Web

ML-powered speech recognition directly in your browser! Built with 🤗 Transformers.js.

Check out the demo site here.

[!IMPORTANT]
Experimental WebGPU support has been added to this branch (demo), if you'd like to run with GPU acceleration!

https://github.com/xenova/whisper-web/assets/26504141/fb170d84-9678-41b5-9248-a112ecc74c27

Running locally

  1. Clone the repo and install dependencies:

    bash git clone https://github.com/xenova/whisper-web.git cd whisper-web npm install

  2. Run the development server:

    bash npm run dev

    Firefox users need to change the dom.workers.modules.enabled setting in about:config to true to enable Web Workers. Check out this issue for more details.

  3. Open the link (e.g., http://localhost:5173/) in your browser.

Extension points exported contracts — how you extend this code

Props (Interface)
(no doc)
src/components/TranscribeButton.tsx
Section (Interface)
(no doc)
src/utils/BlobFix.ts
ProgressItem (Interface)
(no doc)
src/hooks/useTranscriber.ts
Props (Interface)
(no doc)
src/components/Transcript.tsx
ContainerData (Interface)
(no doc)
src/utils/BlobFix.ts
TranscriberUpdateData (Interface)
(no doc)
src/hooks/useTranscriber.ts
Props (Interface)
(no doc)
src/components/modal/Modal.tsx
TranscriberCompleteData (Interface)
(no doc)
src/hooks/useTranscriber.ts

Core symbols most depended-on inside this repo

updateByData
called by 4
src/utils/BlobFix.ts
getSectionById
called by 4
src/utils/BlobFix.ts
onClose
called by 3
src/components/AudioManager.tsx
setValue
called by 3
src/utils/BlobFix.ts
padTime
called by 3
src/utils/AudioUtils.ts
getInstance
called by 2
src/worker.js
saveBlob
called by 2
src/components/Transcript.tsx
setSource
called by 2
src/utils/BlobFix.ts

Shape

Function 54
Method 29
Class 14
Interface 11
Enum 1

Languages

TypeScript100%

Modules by API surface

src/utils/BlobFix.ts41 symbols
src/components/AudioManager.tsx28 symbols
src/worker.js9 symbols
src/hooks/useTranscriber.ts6 symbols
src/components/Transcript.tsx5 symbols
src/components/AudioRecorder.tsx5 symbols
src/hooks/useWorker.ts3 symbols
src/components/TranscribeButton.tsx3 symbols
src/utils/AudioUtils.ts2 symbols
src/components/modal/Modal.tsx2 symbols
src/utils/Constants.ts1 symbols
src/components/modal/UrlInput.tsx1 symbols

Used by 1 indexed graphs manifest dependencies, hub-wide

Dependencies from manifests, versioned

@headlessui/react1.7.13 · 1×
@types/react18.0.28 · 1×
@types/react-dom18.0.11 · 1×
@typescript-eslint/eslint-plugin5.57.0 · 1×
@vitejs/plugin-react3.1.0 · 1×
autoprefixer10.4.14 · 1×
axios1.3.4 · 1×
eslint8.37.0 · 1×
eslint-config-standard-with-typescript34.0.1 · 1×

For agents

$ claude mcp add whisper-web \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact