⭐ If this saves you from saying "kub-cuttle" one more time — star us on GitHub

🔊
How to pronounce kubectl
without the cringe.

A community dictionary of how engineers actually say kubectl, nginx, GIF, JSON, Pydantic, Knative, LaTeX, Postgreswith sources.

git clone https://github.com/anzy-renlab-ai/pronounce.git && cd pronounce && ./install.sh

236 entries · sourced from creator interviews, project FAQs, and Wikipedia · MIT licensed

$ say-it kubectl
🔊 koob control. koob control. koob control. or: cube cuddle. or: kube C T L.

$ say-it GIF
🔊 jif. jif. jif. or: gif.          # with receipts — Wilhite at the Webby Awards, 2013

$ say-it --why JSON
word              JSON
ipa               /ˈdʒeɪsən/
respelling_us     jay son
source            Wikipedia § Pronunciation
url               https://en.wikipedia.org/wiki/JSON#Pronunciation

📜 Famous moments

Some pronunciations aren't opinions — the creators settled them on record.

nginxengine XNGINX official
GNUguh newGNU Project official
etcdet C Detcd FAQ
PostgreSQLpost gress Q LPostgreSQL FAQ
MySQLmy S Q LMySQL docs
Debiandeb ee unDebian about
Djangojang goDjango FAQ
LaTeXlay tekLaTeX project
Lualoo ahLua about
What's in the box
🗂

130+ entries, source-cited

Project names, product names, programmer jargon, acronyms. Every entry tagged with confidence (creator-clarified, community-consensus, contested) and linked to a real source where one exists.

🔊

Multi-reading audio awareness

When a word is contested — GIF, SQL, GUI, kubectl — the CLI audibly chains the alternates ("…or: gif"), so you hear the debate without watching the terminal.

🤖

Claude Code skill included

Ask Claude "how do you pronounce X?" — it replies with audio, IPA, and a source citation, not a phonetic guess.

Zero deps, ~250 lines of bash

Wraps the macOS `say` engine you already have. No npm, no sudo, no surprises.

🔁

Pluggable alternates

--alt for the rival reading, --all for every variant, --solo to skip the chain, --why shows the dict entry with source URL.

📦

Community-owned

The dictionary is a TSV file you can edit. Open a PR with your favorite mispronounced project — see CONTRIBUTING.md.

Heard, not just read

IPA is a reference — like a dictionary entry for a foreign word. You don't learn how to pronounce schadenfreude by squinting at /ˈʃɑːdənˌfrɔɪdə/. You learn it by hearing someone say it three times. Pronounce wires your OS's TTS to a one-shot CLI so the answer is sound, not a phonetic transcription.

Try a few

Click ▶ to hear it in your browser. (Audio quality varies by browser — install the CLI for the macOS Samantha rendering.)

See all 236 entries →

FAQ

Why not just listen to a YouTube video?

Because you'd have to hunt for the right clip, unmute, wait, and rewind. say-it kubectl plays the right reading three times in 4 seconds. The site is here for when you're not at a terminal.

Why is the audio in the browser different from the CLI?

The CLI uses macOS's built-in say with a tuned respelling. The site uses your browser's Web Speech API, whose voice and pronunciation rules vary by OS and browser. For a contested word like GIF they should agree; for projects with quirky readings the CLI is the canonical one.

How is this different from a regular pronunciation dictionary?

This one is for the names engineers actually use — kubectl, nginx, Pydantic, Knative, Cilium. Webster doesn't cover them; this does, with the additional value that each entry is tagged with a confidence level and (where possible) a citable source.

Why is GIF pronounced "jif" here? I always say "gif".

Both readings are real. The dictionary picks the creator's stated reading as primary ("jif", per Steve Wilhite at the 2013 Webby Awards) and surfaces "gif" as the alternate. Run say-it --alt GIF to hear the alternate. Same pattern for SQL, JSON, char, regex, and the other contested ones.

Will Windows or Linux be supported?

Yes — Windows (PowerShell + System.Speech) and Linux (espeak-ng / cloud TTS) are M2/M3 on the roadmap. The dictionary itself is platform-agnostic; only the playback engine needs the platform-specific backend. PRs welcome.

How do I add a missing project?

Open a PR adding a row to data/pronunciations.tsv. See CONTRIBUTING.md for the column format. There's also a pinned issue with a wishlist of words we want next.

Is the source URL field mandatory?

No. If no source exists, leave it blank and mark confidence as community-consensus. We'd rather under-claim than fabricate.

Why does the CLI play "or: gif" after the primary?

Multi-reading words carry context — you should know there's a debate. The audible "or: <alt>" tail makes that perceptible without watching the terminal. Use --solo to skip it once you've internalized the debate.

⭐ Like it? Star it.

The dictionary is community-maintained — every star nudges more devs to contribute their favorite mispronounced project name.

Star on GitHub GitHub stars
Star on GitHub