Spoken English coach

Say it. See what to fix.

zephvox listens while you speak English and shows the sounds and sentences to work on, then lets you practice them until they pass. Everything can run on your own computer, offline.

Free and open source · Linux, macOS and Windows

A zephvox report: the transcript with mispronounced words underlined, and for each one the expected sounds against the ones you made.

How it works

Talk. Get a report. Practice.

  1. Record from anywhere

    Press Ctrl Shift Alt R in any app, talk for a minute or two, and press it again. You don't need the page open.

  2. It listens closely

    zephvox transcribes what you said, compares each sound with the dictionary and checks the grammar. That happens on your computer, or on a zephvox server if you'd rather use one.

  3. Read it, then practice

    See each mistake in its sentence, hear it said correctly, and practice the word until it scores as a pass. Your history stays on your computer.

Sounds, not just words

See exactly which sound slipped.

Speech apps often just say "try again". zephvox lines up the sounds a word should have against the ones you made, so you can see that the th came out as a t, and what to do with your tongue about it.

What you get

Everything you need to keep improving.

One shortcut, anywhere

Start and stop from any app. A desktop note tells you when your report is ready.

Expected against heard sounds

A dropped or swapped sound shows as a gap or a colored tile, not a vague score.

Grammar, with the fix

The sentence you said, the corrected one and a short reason. Mark a false alarm and it's ignored from then on.

Practice that scores you

Say a word and get a 0–100 score a moment later. It stops listening when you stop talking.

A page that shows what's happening

Wind that follows your voice while you record and carries your words through each step.

Progress over time

Your weakest words and the sounds you mix up most, across every recording.

Every option, in the page

Pick models, drivers, thresholds and shortcut keys in Settings. Changes apply right away, and no config file needs editing.

Private and offline

The full app runs on your computer, and after the install it needs no internet. Nothing is sent anywhere.

One strong machine, many devices

Turn on sharing and your other devices, or other people, can analyze with your GPU through a small client.

Setup guide

Install zephvox.

There are two ways to run it. Most people want the full app.

Most people

Full app

Everything runs on this computer, and works offline.

  • A few GB of disk, 8 GB+ of RAM
  • A GPU makes it fast; without one, a lighter profile is used
  • Can also share this computer with your other devices
Full app steps

Client only

A small app that records here and uses a zephvox server to analyze.

  • About 80 MB, no PyTorch and no models
  • Needs a server's address and an invite code
  • Good for a laptop, with a stronger machine doing the work
Client steps
Your system

Full app

  1. Run the installer

    One command. It installs uv if you don't have it, downloads zephvox into ~/zephvox and starts the setup.

    curl -LsSf https://raw.githubusercontent.com/dipoahmed018/zephvox/main/install.sh | sh

    Run it in a terminal (PowerShell on Windows). Nothing else needs a system install.

  2. Answer the setup's questions

    The setup looks at your computer and recommends a profile. You mostly press Enter. It:

    • detects your CPU, RAM, GPU and free disk space;
    • recommends a profile, and shows what it will download and how much before it starts;
    • installs Ollama for grammar checking, if you agree;
    • installs the matching PyTorch build (NVIDIA, AMD on Linux, Apple GPU, or CPU);
    • downloads the models, adds zephvox to your app menu and runs a test analysis.
    Which profile will I get?
    ProfileRecommended forSpeech to textGrammar
    largeGPU with 16 GB+ (Mac: 32 GB+)Whisper large-v3-turboqwen3:14b
    standardGPU with 10–16 GB (Mac: 16 GB+)Whisper large-v3-turboqwen3:8b
    smallGPU with 6–10 GB (Mac: 8 GB)Whisper large-v3-turboqwen3:4b
    cpuno usable GPU, 16 GB+ RAMWhisper small.enqwen3:4b (slow)
    cpu-lightunder 16 GB RAMWhisper base.enoff
    customyour own choicesany size, any model, an API, or none

    You can switch profile later in Settings, and the setup is safe to run again.

  3. Start it and record

    Open zephvox from your app menu, or run it from a terminal:

    zephvox serve --open

    The page opens at http://127.0.0.1:8765. Press Ctrl Shift Alt R, talk, and press it again. Your report opens when it's ready.

What you need

  • Linux, macOS or Windows, and a microphone.
  • 8 GB+ of RAM (more is better) and a few GB of free disk. The setup checks before it downloads.
  • A GPU is optional. NVIDIA (driver 525+), AMD on Linux and Apple GPUs are used; AMD and Intel on Windows fall back to the CPU.
  • Internet for the install only. After that it runs offline.
Afterwards: update, repair, unattended installs, remove
zephvox serve --openstart zephvox (or use the app menu)
zephvox setupreview the profile or repair the install (--dry-run only shows the plan)
zephvox updateinstall the latest release, keeping your settings; stops zephvox first and starts it again afterwards
zephvox quitstop the running zephvox
zephvox uninstallremove it, asking before deleting models or your recordings
zephvox doctorprint what it found on this computer, for troubleshooting

Unattended: add --profile cpu --yes to the installer command (on Windows, set $env:ZEPHVOX_SETUP_ARGS = "--profile cpu --yes" first).

Client only

  1. Get an invite

    You need a zephvox server's address and an invite code. Ask whoever runs the server, or make your own from a full install. A code works once, for one device, and expires after a few days.

  2. Run one command

    Put in the server's address and your code.

    curl -LsSf https://raw.githubusercontent.com/dipoahmed018/zephvox/main/install.sh | sh -s -- \
      --server-url https://speak.example.com --invite inv_...

    It installs the small client (about 80 MB), connects it to the server and adds it to your app menu.

  3. Record

    Open zephvox from your app menu and press Ctrl Shift Alt R. Recordings and reports stay on your computer; only the analysis runs on the server. If the server can't be reached, recordings wait and are analyzed when it's back.

    Already installed the client and have an invite now? In the app: Settings → Where analysis runs → A server.

Let other devices use your full install

Your full app can act as the server, with its models already loaded. Your laptop, or a friend's computer, then needs only the client.

  1. Turn sharing on

    In the app: Settings → Sharing. Switch Share on, and choose My network so other devices can reach it. The address to give out is shown there.

  2. Add an account and copy its invite

    Type a name under Accounts and press Add and invite. The invite is shown once, with the exact command for the other device. You can set limits per account and disconnect devices in the same tab.

  3. Connect the other device

    Follow the client steps there, using your computer's address and that invite.

Plain http is fine on your own network. To use it from the internet, put HTTPS in front with Caddy or nginx. See server mode in the README, which also covers running it 24/7 with Docker.

Privacy

Your voice goes where you send it, and nowhere else.

Full app: nowhere

Once installed, it needs no internet. Recordings, models and reports all stay on your computer.

Client: only your server

Recordings go to the one server you connected, and nowhere else. The app warns you if its address isn't encrypted.

Your history stays here

Reports and practice scores live on your computer. Backing them up to a server is a switch in Settings, off unless you turn it on.

Open source

zephvox is free software under the AGPL-3.0. You can read exactly what it does with your audio.

Troubleshooting

If something doesn't work.

Running zephvox doctor prints what zephvox found on your computer, which helps with most of these.

Still stuck? Open an issue and include the output of zephvox doctor.

The report says "Grammar was skipped"

The grammar model isn't downloaded yet. Open Settings → Models & checks → Grammar and press Download, or run ollama pull qwen3:8b (use the model name shown there). Pronunciation still works in the meantime.

The shortcut does nothing

Check Settings → General → Shortcuts: it should say Active. On Linux, run zephvox desktop-entry once and allow the shortcuts when your desktop asks. On macOS, allow zephvox under Privacy & Security → Accessibility. Make sure only one copy of zephvox is running. You can always bind zephvox toggle in your system's own keyboard settings.

My AMD or NVIDIA GPU isn't used

NVIDIA needs the normal driver, version 525 or newer; no CUDA toolkit. On AMD with Linux, your user must be in the render and video groups (the setup tells you), and some cards need an HSA_OVERRIDE_GFX_VERSION value, which the setup offers. AMD and Intel GPUs on Windows aren't supported by PyTorch, so the CPU profiles are used.

The microphone isn't recording

Choose it under Settings → General → Microphone. On macOS and Windows, allow microphone access for the terminal or app that started zephvox.

The client can't connect to my server

Check the address (it should start with https:// unless the server is on the same computer) and that the invite hasn't been used or expired; ask for a new one if so. Servers that aren't on your own network need HTTPS in front of them.

Analysis is very slow

You're probably on a CPU profile. A smaller speech model and turning off grammar help, or use a server with a GPU. The profile can be changed any time in Settings.

Questions

Before you install.

Which install should I choose?

The full app, unless you already have a zephvox server or a stronger machine on your network. It's simpler, private, and works offline. The client is for when you'd rather not run the models on this computer.

Do I need a GPU?

No. With a GPU the analysis takes seconds; on a CPU it's slower, and the setup picks a lighter profile for you. A client install needs no GPU at all.

How big is the full install?

Several GB: PyTorch and the speech models dominate. The setup tells you the exact sizes and checks your disk before downloading anything, and asks first.

Where do I get an invite for the client?

From whoever runs the server you're meant to use, or from your own full install: Settings → Sharing.

Can I switch between the two later?

Yes. Settings → Where analysis runs switches between this computer and a server. On a client install, choosing this computer offers to install the speech models.

How do I change the shortcut keys?

Settings → General → Shortcuts: click Change and press the new keys.

Which English does it check against?

Standard American English by default, or British English with a custom profile. Some findings are accent rather than mistakes, and you can mark those as "not a mistake".

How do I update it?

Run zephvox update. If zephvox is running it is stopped and started again for you, and your settings, models and recordings are kept. If you installed from a git checkout, run git pull and then uv run zephvox setup.

How do I remove it?

Run zephvox uninstall. It asks before deleting the models or your recordings.