Drupal is a registered trademark of Dries Buytaert

speakeasy

78 sites No security coverage
View on drupal.org

Speakeasy adds accessible text-to-speech controls powered by the browser's Speech Synthesis API so visitors can listen to your site content, complete with keyboard shortcuts for quick playback control.

Features

  • Flexible playback UI. Place the Speakeasy block to compile plain text from the fields your audience can view, then present it as a button set, media player, or simple link with optional voice picker, custom labels, and per-block speed overrides. The block only renders when content is available and passes everything to Drupal behaviors for playback.
  • Sentence highlighting & auto-scroll. Enable highlighting to attach an additional library that wraps each sentence, tracks playback progress, and gently scrolls the page as the words are spoken.
  • Curate the voice list. Administrators can pick the default theme, toggle voice selection and highlighting globally, set the default rate, whitelist voices per browser, and restrict languages from a single settings form. The front-end voice loader enforces those limits while matching the visitor’s locale and saved preferences.
  • Theme-ready styling. Choose between the bundled Default and Olivero-inspired themes or opt out entirely to supply your own CSS.
  • Visitor preferences. Grant users a self-service form to save their preferred voice and speed, backed by a JavaScript behavior that populates the selector with the allowed voices and syncs choices with the active player.
  • Usability extras. The front-end announces when speech synthesis is unavailable, updates controls’ ARIA state in real time, marks targeted fields with data attributes for styling, and offers keyboard shortcuts (Space to toggle, S to stop).

Getting started

Configure global defaults at Configuration → Speakeasy to choose themes, voice/highlighting policies, default speed, and any per-browser or language filters.

Place the Speakeasy block, pick your preferred output style, text fields to read, and per-block options such as custom button text, highlight toggle, and playback rate.

Allow users with the proper permission to visit /user/speakeasy/preferences and save their own voice and speed settings, which are honored whenever the block renders.

Permissions

Administer Speakeasy settings – manage the global configuration page.

Manage Speakeasy user preferences – allow access to the personal preferences form (linkable from the user account menu).

Browser support

Speakeasy relies on the browser’s Speech Synthesis API. The module alerts visitors if their browser doesn’t support it and the help page highlights that voice quality varies by platform, with links to compatibility resources.

Key Observations

  • Voice Availability: The number and quality of voices depend heavily on the browser and operating system:
    • Firefox: Offers many voices, but quality varies widely (some may be subpar or "useless" for certain languages).
    • Edge: Provides a smaller set of high-quality voices, often a good choice for natural-sounding speech.
    • Chrome: No voices are available on Linux by default. On Windows, Chrome offers a few reliable voices.
    • Brave, Chromium, Opera: Typically lack voices on Linux; switching to Windows may unlock additional options (untested).
    • Safari: Generally supports the API, with voice availability depending on macOS/iOS settings.
  • Operating System Impact: Running your browser on Windows tends to provide the most voice options across all supported browsers.

For the best experience, we recommend testing SpeakEasy on Windows with Edge or Chrome if voice quality and variety are important to you.

Contributing Voice Tips

Have a favorite voice for your language? Share it with the community! Visit the SpeakEasy issue queue and join the discussion thread titled "User-Recommended Voices for SpeakEasy" to exchange tips. For example:

  • Danish Voices:
    • Edge: "Christel", "Jeppe" (high quality).
    • Chrome: "Helle" (Windows only, good quality).
    • Firefox: "Danish+Hugo" (poor quality).

Activity

Total releases
5
First release
Mar 2025
Latest release
4 months ago
Release cadence
53 days
Stability
80% stable

Release Timeline

Releases

Version Type Release date
1.2.1 Stable Oct 16, 2025
1.2.0 Stable Sep 17, 2025
1.2.0-beta1 Pre-release Sep 8, 2025
1.1.1 Stable Apr 7, 2025
1.1.0 Stable Mar 20, 2025