explaingit

lichess-org/vosk-browser

Analysis updated 2026-07-10 · repo last pushed 2025-09-29

Audience · developerComplexity · 3/5QuietSetup · moderate

TLDR

A JavaScript library that adds offline speech recognition to websites by running the Vosk engine entirely in the browser via WebAssembly, with no cloud service required.

Mindmap

mindmap
  root((repo))
    What it does
      Browser speech recognition
      Offline transcription
      Real-time text results
    How it works
      Vosk compiled to WebAssembly
      Runs in a Web Worker
      Loads a language model
    Use cases
      Voice commands
      Live captioning
      Pronunciation feedback
    Tech stack
      JavaScript
      WebAssembly
      Web Workers
    Tradeoffs
      Device dependent performance
      Early stage project
      Needs better docs
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add voice commands to a web-based productivity tool so users can navigate without a mouse.

USE CASE 2

Build live captions for a video platform that work entirely offline in the browser.

USE CASE 3

Create pronunciation feedback for a language-learning app using local speech recognition.

USE CASE 4

Transcribe uploaded audio files directly on a webpage without sending data to a server.

What is it built with?

JavaScriptWebAssemblyWeb WorkersVosk

How does it compare?

lichess-org/vosk-browser0xhassaan/nn-from-scratch0xzgbot/hermes-comfyui-skills
Stars00
LanguagePython
Last pushed2025-09-29
MaintenanceQuiet
Setup difficultymoderatemoderateeasy
Complexity3/54/51/5
Audiencedeveloperdeveloperdesigner

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires downloading a separate Vosk language model file and understanding how to serve it alongside your web app.

The license is not specified in the repository explanation.

In plain English

Vosk-Browser lets you add speech recognition directly to a website, entirely in the user's browser. Instead of sending audio to a cloud service like Google or Amazon for transcription, the audio is processed locally on the user's own device. This means you can build features like voice commands, live captioning, or voice-driven search without worrying about server costs or latency, and it works even without an internet connection once the page is loaded. The library works by running Vosk, an open-source speech recognition engine, compiled into WebAssembly, a format that lets code written in languages like C++ run inside a web browser at near-native speed. It specifically runs inside a Web Worker, which is essentially a background thread that keeps the speech recognition from freezing up the rest of your webpage. You load a language model, connect the library to the microphone or an audio file, and it starts sending back text results in real time. This is useful for web developers building apps that need voice input without the complexity or privacy concerns of a third-party cloud API. For example, someone building a language-learning app could use it for pronunciation feedback. A productivity tool could add voice commands. A video platform could offer live captions. The live demo shows it working in 13 languages, transcribing both microphone input and uploaded audio files directly in the browser. One notable tradeoff: running speech recognition entirely on the client means the user's device does all the heavy lifting, so performance depends on their hardware. The library is also still early in its lifecycle, the to-do list includes basics like automated tests and better documentation, so it may require some patience to get up and running.

Copy-paste prompts

Prompt 1
How do I set up vosk-browser to transcribe microphone input in real time on a webpage? Include the code for starting recognition and displaying partial results.
Prompt 2
Using vosk-browser, write a function that loads a specific Vosk language model and transcribes an uploaded audio file instead of live microphone input.
Prompt 3
I want to use vosk-browser for voice commands in my web app. How do I detect when a specific phrase is recognized and trigger a JavaScript function?
Prompt 4
Help me install and configure vosk-browser in a plain HTML and JavaScript project. Where do I get the language model file and how do I load it?

Frequently asked questions

What is vosk-browser?

A JavaScript library that adds offline speech recognition to websites by running the Vosk engine entirely in the browser via WebAssembly, with no cloud service required.

Is vosk-browser actively maintained?

Quiet — no commits in 6-12 months (last push 2025-09-29).

What license does vosk-browser use?

The license is not specified in the repository explanation.

How hard is vosk-browser to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is vosk-browser for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.