Skip to content

[Suggestion] Rails real-time transcription with Action Cable (Ruby) #241

@deepgram-robot

Description

@deepgram-robot

What to build

A Ruby on Rails application demonstrating real-time audio transcription using Action Cable WebSockets. The app should capture microphone audio in the browser, stream it through Action Cable to a Rails backend, forward it to Deepgram's streaming STT API, and push live transcript updates back to the browser in real time.

Why this matters

Rails remains one of the most popular backend frameworks, powering applications at Shopify, GitHub, Basecamp, and thousands of startups. Rails developers building voice features (live captions, meeting transcription, voice commands) need a working reference showing how Action Cable's WebSocket infrastructure integrates with Deepgram's streaming API. Ruby is well-covered in starter templates but has no full Rails integration example with real-time bidirectional streaming.

Suggested scope

  • Language: Ruby 3.2+ / Rails 7+
  • Deepgram APIs: STT streaming WebSocket (Nova-3)
  • Features: Browser mic capture via MediaRecorder, Action Cable channel for audio streaming, real-time transcript display with interim results, speaker diarization
  • Frontend: Stimulus or vanilla JS (Rails default stack)
  • Complexity: Medium — standard Rails app with Action Cable WebSocket channel

Acceptance criteria

  • Runnable with minimal setup (clone, bundle install, add API key, rails server)
  • README explains the Action Cable ↔ Deepgram WebSocket architecture clearly
  • Uses current Deepgram API (direct WebSocket, Ruby does not have an official SDK with streaming)
  • Displays real-time interim and final transcripts in the browser
  • Handles connection lifecycle (open, close, reconnect)

Raised by the DX intelligence system.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions