🚨 Shai-Hulud Strikes Again:834 Packages Compromised.Technical Analysis →
Socket
Book a DemoInstallSign in
Socket

@raghavendra_kj/stt-js

Package Overview
Dependencies
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@raghavendra_kj/stt-js

A wrapper around the Web Speech API for speech-to-text functionality.

latest
npmnpm
Version
1.0.7
Version published
Maintainers
1
Created
Source

Speech-to-Text (STT) Library

Live Demo

You can view a live demo of the example here.

Introduction

The Speech-to-Text (STT) library provides a clean interface for integrating browser-based speech recognition into your web applications using the Web Speech API. It supports real-time transcription, interim results, and continuous listening.

Installation

npm install @raghavendra_kj/stt-js

Usage

Import the Library

import { STT } from "@raghavendra_kj/stt-js";

Create an Instance

const stt = new STT();

Start Recognition

await stt.start();

You can also pass options:

await stt.start({
  lang: "en-IN",
  continuous: false,
  interimResults: false
});

Stop or Abort Recognition

stt.stop(); // Gracefully ends recognition
stt.abort(); // Forcibly ends recognition

Add Event Listeners

stt.onResult((text) => {
  console.log("Final result:", text);
});

stt.onPartialResult((text) => {
  console.log("Interim result:", text);
});

stt.onError((error) => {
  console.error("Error occurred:", error);
});

Remove Event Listeners

stt.offResult(handler); // Remove a specific listener
stt.removeAllListeners(); // Remove all listeners

API Reference

STT.start(options?)

Starts speech recognition.

Parameters:

  • lang (string): Language code (default: "en-US")
  • continuous (boolean): If recognition should continue after pauses (default: true)
  • interimResults (boolean): Whether to include interim results (default: true)

Returns: Promise<void>

STT.stop()

Stops the recognition session gracefully.

STT.abort()

Forcibly aborts the recognition session.

STT.isRecognizing()

Returns a boolean indicating whether recognition is currently active.

STT.dispose()

Stops recognition and removes all listeners. Use for cleanup.

Event Listeners

Add Listeners

  • stt.onStart(handler: () => void): Triggered when recognition starts.
  • stt.onEnd(handler: () => void): Triggered when recognition ends.
  • stt.onResult(handler: (text: string) => void): Triggered when a final transcript is available.
  • stt.onPartialResult(handler: (text: string) => void): Triggered for interim transcript updates.
  • stt.onError(handler: (error: STTError) => void): Triggered when an error occurs.

Remove Listeners

  • stt.offStart(handler: () => void): Removes a specific "start" listener.
  • stt.offEnd(handler: () => void): Removes a specific "end" listener.
  • stt.offResult(handler: (text: string) => void): Removes a specific "result" listener.
  • stt.offPartialResult(handler: (text: string) => void): Removes a specific "partialResult" listener.
  • stt.offError(handler: (error: STTError) => void): Removes a specific "error" listener.
  • stt.removeAllListeners(event?): Removes all listeners for a specific event or all events.

Permissions

If supported, the library uses the Permissions API to check for microphone access.

Errors are reported through the "error" events.

Browser Support

Ensure the target browser supports the Web Speech API (e.g., latest versions of Chrome, Edge).

Example

A complete working example is available in example/index.html.

Keywords

speech-to-text

FAQs

Package last updated on 11 May 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts