npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

real-time-speech-analyzer

v1.0.0

Published

Real-time speech analysis with local LLM using multiple concurrent analysis instructions

Readme

Real-Time Speech Analyzer

🎙️ Real-time speech analysis with local LLM using multiple concurrent analysis instructions

Analyze speech in real-time using Web Speech API and local Ollama models. Run multiple analysis instructions simultaneously on each speech segment with live processing feedback.

✨ Features

  • Real-time speech transcription with live word-by-word display
  • Multiple analysis instructions running concurrently on each speech chunk
  • Conversation context management with rolling summaries
  • Local LLM integration via Ollama (privacy-focused, no cloud required)
  • Processing notifications with live feedback
  • Customizable analysis prompts with persistent settings
  • Cross-platform support (Windows, macOS, Linux)

🚀 Quick Start

Prerequisites

  1. Install Ollama and pull a model:

    # Install Ollama: https://ollama.ai/
    ollama pull llama3.1:8b
    ollama serve
  2. Use Chrome or Edge browser (required for Web Speech API)

Installation

# Install globally
npm install -g real-time-speech-analyzer

# Start the analyzer
speech-analyzer

Or run locally:

# Clone and run
git clone https://github.com/speech-analyzer/speech-analyzer
cd speech-analyzer
npm install
npm start

Usage

  1. Start the server - Opens at http://localhost:3000
  2. Configure analysis instructions - Default includes:
    • Sentiment analysis (5 keywords)
    • Controversial statement detection with counterarguments
  3. Click "Start Listening" and begin speaking
  4. View real-time results in the AI Analysis column

🎯 Default Analysis Instructions

  1. "Analyse sentiment, show as 5 keywords, nothing else."
  2. "Identify most controversial statement and respond with a counterargument."

🔧 Configuration Options

Analysis Instructions

  • Add multiple instructions with the + Add button
  • Update All - Apply changes to all fields
  • Default All - Reset to default instruction set
  • Remove fields with ✖ button (when multiple exist)

Context Management

  • Summary threshold - Create summary after N chunks (default: 20)
  • Recent chunks - Keep N recent chunks in context (default: 10)
  • Force Summary - Manually trigger summarization

System Prompt

  • Customize the AI's behavior and response style
  • Default includes 25-word response limit
  • Update and Default buttons for easy management

🖥️ Cross-Platform Support

Windows

npm install -g real-time-speech-analyzer
speech-analyzer

macOS/Linux

npm install -g real-time-speech-analyzer
speech-analyzer

Runtime Requirements

  • Node.js 18+ (built-in support)
  • Bun (optional, for faster performance)
  • Ollama running locally
  • Chrome/Edge browser

🏗️ Architecture

  • Frontend: TypeScript + DOM manipulation
  • Backend: Bun server with WebSocket communication
  • LLM: Local Ollama integration
  • Speech: Web Speech API with interim results
  • Context: Rolling summary system for conversation memory

📊 Processing Flow

  1. Speech captured → Web Speech API
  2. Live transcription → Shows words as spoken
  3. Final chunks → Sent to analysis queue
  4. Processing notification → Yellow indicator with spinner
  5. Multiple LLM calls → One per analysis instruction
  6. Results displayed → Separate boxes per instruction
  7. Context updated → Rolling summary system

🔒 Privacy

  • 100% local processing - No cloud APIs
  • Your speech never leaves your machine
  • Local Ollama models for AI analysis
  • No data collection or tracking

⚙️ Development

# Development mode with hot reload
npm run dev

# Build for production
npm run build

# Start production build
npm start

Project Structure

speech-analyzer/
├── server.ts          # Bun WebSocket server
├── app.ts             # Frontend TypeScript
├── index.html         # Main UI
├── bin/               # Executable scripts
└── dist/              # Built files

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test cross-platform compatibility
  5. Submit a pull request

📝 License

MIT License - see LICENSE file for details

🐛 Troubleshooting

"Speech recognition not supported"

  • Use Chrome or Edge browser
  • Ensure HTTPS (or localhost)

"Ollama: Unavailable"

  • Start Ollama: ollama serve
  • Pull a model: ollama pull llama3.1:8b
  • Check Ollama is running on port 11434

"No analysis appearing"

  • Check browser console for errors
  • Verify Ollama model is loaded
  • Ensure analysis instructions are configured

Performance Issues

  • Use lighter Ollama models (e.g., llama3.1:8b vs llama3.1:70b)
  • Reduce context window settings
  • Close other browser tabs

🔗 Links

  • GitHub: https://github.com/speech-analyzer/speech-analyzer
  • npm: https://npmjs.com/package/real-time-speech-analyzer
  • Ollama: https://ollama.ai/
  • Bun: https://bun.sh/

Made with ❤️ for real-time speech analysis