github EpicenterHQ/epicenter v7.8.0
Whispering v7.8.0: Custom Providers, Enter After Transcription, Many Internal Fixes

6 hours ago

This release adds support for custom OpenAI-compatible API endpoints for transformations, so you can use your own LLM servers, local models, or any OpenAI-compatible service. We also fixed the white screen on launch by parallelizing startup operations.

Custom OpenAI-Compatible Provider

You can now use any OpenAI-compatible API for transformations. This means you can connect to:

  • Self-hosted models (Ollama, LocalAI, vLLM)
  • Custom endpoints behind your firewall
  • Any service that speaks the OpenAI API format

Go to Settings > Transformations > Provider and select "Custom" to configure your endpoint.

Enter After Transcription

New option to automatically press Enter after inserting transcribed text. Useful for chat applications, command lines, or anywhere you want to submit immediately after dictation.

Settings > Transcription > Post-transcription behavior

Performance: No More White Screen

Startup is now faster. We parallelized the async initialization operations that were causing a white screen on launch. The app should feel snappier when you open it.

Internal: Zod to Arktype Migration

We migrated our entire schema validation layer from Zod to Arktype. This improves TypeScript inference and sets us up for better compile-time type safety. The migration also introduced arktype-based validation for reading markdown files from the file system, making the local-first storage more robust.

What's Changed

Features

  • feat: add option to simulate Enter keystroke after transcription by @braden-w in #1046
  • feat(whispering:transformations): add custom OpenAI-compatible provider by @thurstonsand in #984
  • feat(epicenter): add blob storage system for binary file handling by @braden-w in #1043
  • feat(windows): improve installer configuration to reduce false positives by @braden-w in #1026

Bug Fixes

  • fix(push-to-talk): use explicit start/stop instead of toggle by @braden-w in #1048
  • fix(recording): prevent race condition in rapid push-to-talk by @braden-w in #1020
  • fix(transcription): validate model downloads and detect corrupted files by @braden-w in #1008
  • fix(audio): enable asset protocol for audio playback in recordings table by @braden-w in #987
  • fix(transcription): convert number input to string for temperature setting by @Cprakhar in #1018
  • fix(transform-clipboard): add file system permissions for transformations by @braden-w in #1063
  • fix(db): support all audio/video formats in findAudioFile by @braden-w in #1051

Performance

  • perf(startup): parallelize async init operations to prevent white screen by @braden-w in #1045

Internal

  • refactor: migrate from Zod to Arktype for schema validation by @braden-w in #1052
  • feat: add arktype JSON Schema fallback handlers by @braden-w in #1054
  • chore: update license to AGPL-3.0 and migrate GitHub links to EpicenterHQ by @braden-w in #1007
  • chore: migrate to zod v4 and standard schema by @braden-w in #1027
  • fix: migrate remaining lucide imports to individual icon paths by @braden-w in #1009
  • chore(ui): migrate to bits-ui 2.14.4 by @braden-w in #1039
  • refactor(mime): use mime package instead of custom implementation by @braden-w in #1047
  • Fixing some outdated doc links by @rupokghosh in #993

New Contributors

Full Changelog: v7.7.2...v7.8.0


Questions? Join our Discord or check the README.

Love Whispering? Star us on GitHub to show your support!

Don't miss a new epicenter release

NewReleases is sending notifications on new releases.