Labsco
anzy-renlab-ai logo

Pronounce

β˜… 28

from anzy-renlab-ai

Pronunciation dictionary for developer jargon - IPA, respelling and audio for 1,650+ sourced entries (kubectl, nginx, JSON).

πŸ”₯πŸ”₯βœ“ VerifiedFreeQuick setup

πŸ”Š say-it Β· Pronounce

Stop saying "kub-cuttle". One Bash command pronounces 1,790+ developer jargon names β€” most with a cited source.

🌐 pronounce.renlab.ai Β· πŸ‡¨πŸ‡³ δΈ­ζ–‡ Β· πŸ“– Browse Β· 🎯 Quiz Β· 🎀 Voice search Β· πŸ”Œ MCP server

say-it kubectl β€” terminal demo

β–Ά Watch the 47-second promo (with voice) Β· 🎯 Try the quiz Β· 🎀 Voice search


πŸš€ Try it in 30 seconds

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

say-it CLI demo β€” kubectl, YAML, TOML, Ghostty

That's it. Now try say-it GIF, say-it nginx, say-it Pydantic, say-it --why JSON, or say-it quiz for a 10-question challenge. Linux users: install espeak-ng (sudo apt install espeak-ng) and the CLI just works. Windows: same CLI under WSL or git-bash + PowerShell. Or skip install and use the browser at pronounce.renlab.ai.

⭐ If say-it kubectl saves you one cringey standup moment β€” star the repo. It nudges more devs to contribute their favorite mispronounced project name.

Star history


πŸ† The developer pronunciation scoreboard

1,790 entries β€” 1,171 carry a citable source β€” 69 settled by the creator themselves, 163 the community still argues about. The famous ones:

βœ… Settled β€” the creator said so

WordIt's……notSettled by
GIF"jif""gif" (hard g)Steve Wilhite (creator), NYT 2013
nginx"engine X""n-jinx"NGINX official
YAML"yam-ul""yammel"yaml.org
GNU"guh-NEW" (hard g)"noo"GNU Project
LaTeX"lay-tek""lay-teks"Lamport / LaTeX project
TOMLrhymes with "knoll""tom-el"Tom Preston-Werner (creator)
Tcl"tickle""T-C-L"John Ousterhout (creator)
awk"auk" (like the bird)"A-W-K"Aho / Weinberger / Kernighan

βš”οΈ Still contested β€” both readings are in active use

WordCamp ACamp B
kubectl"koob-control""cube-cuddle"
SQL"sequel""S-Q-L"
JSON"JAY-son""JEE-son"
GUI"gooey""G-U-I"
JWT"jot" (per RFC 7519)"J-W-T"

Every cell has IPA, audio, and the source. Hear all 1,790 β†’

Disagree with one? That's the whole point β€” open a PR with your reading and a source. The argument is the dataset.


What you're actually getting

  • 1,790 entries β€” 1,171 carry a citable source. Confidence-tagged (creator-clarified / community-consensus / contested), each with a citable URL where one exists (we'd rather leave it blank than fabricate one). Wilhite said GIF is "jif" at the 2013 Webby Awards. Crockford says JSON is "JAY-son" (RailsConf 2009). RFC 7519 says JWT is "jot". The dictionary cites them.
  • Multi-reading audio. For words where the debate is real β€” GIF, SQL, GUI, char, regex β€” the CLI chains the alternates after the primary with a spoken "or:" so you hear the debate without staring at the terminal. --solo skips the tail once you've internalized it.
  • Zero deps. ~250 lines of Bash. No npm, no sudo, no surprises. Wraps the say engine that's already on your Mac. Ships a Claude Code skill and an MCP server so your AI answers "how do you pronounce X?" with audio, not a phonetic guess.
$ say-it --why JSON
word              JSON
ipa               /ˈdΚ’eΙͺsΙ™n/
respelling_us     jay son
source            Douglas Crockford (RailsConf 2009)
url               https://www.youtube.com/watch?v=-C-JoyNuQJs

Why not just Google?

Because Google gives you 47 Reddit arguments and a YouTube clip you have to unmute. IPA gives you /ˈkuːb kΙ™nˌtroʊl/ β€” a reference, not a teacher.

You don't need a phonetic transcription. You need to hear the word. Twice. Maybe three times. Done.

say-it ships a community-maintained dictionary of how engineers actually say the names that trip everyone up β€” and feeds the intended respelling to your OS's text-to-speech engine, so kubectl comes out as koob-control, not whatever your computer guessed from the letters.

Famous moments

Some pronunciations aren't opinions β€” the creators settled them. The dictionary cites every one:

WordReadingSource
GIF"jif" (creator says so)Steve Wilhite, Webby Awards 2013
JSON"jay-son"Douglas Crockford, RailsConf 2009
GNU"g-noo" (hard G, one syllable)GNU Project official
Linux"LIN-ux" (short i, schwa)Linus Torvalds himself
LaTeX"lay-tek" (or "lah-tek")Leslie Lamport, official
Django"JANG-go" (silent D)Django FAQ
Vue"view" (one syllable)Evan You, Vue docs
Vite"veet" (French for quick)Vite docs
Knative"KAY-native" (the K is voiced)Knative docs
etcd"et-cee-dee" (et-cetera-distributed)etcd FAQ

Every dictionary entry includes a source_url. Run say-it --why <word> to see it.

Claude Code integration

You:    kubectl ζ€ŽδΉˆθ―»οΌŸ
Claude: πŸ”Š (plays "koob-control" three times)
        /ˈkuːb kΙ™nˌtroʊl/ β€” "KOOB-control". Kelsey Hightower says it
        this way (KubeCon talk). "Cube-cuddle" is an alternate β€”
        try `say-it --alt kubectl` to hear it.

Once installed, the pronounce-word skill auto-triggers on:

  • X ζ€ŽδΉˆθ―» / X ζ€ŽδΉˆε‘ιŸ³ / θ―»δΈ€δΈ‹ X
  • how do you pronounce X / pronounce X / how do you say X

Your AI replies with sound, not just a phonetic guess. Skill file: skills/pronounce-word/SKILL.md.

Not on Claude? Same skill drops into Codex CLI (codex plugin marketplace add anzy-renlab-ai/pronounce) and Kiro (~/.kiro/skills/), and the MCP server covers Claude Desktop, Cursor, Continue, Zed, Cline & friends β€” full matrix in integrations/.

Add to Kiro

VS Code extension

Open VSX Downloads

Pronounce demo β€” kubectl, YAML, Ghostty, wagmi

Hover over any tech word in any file β€” see the IPA, hear the pronunciation. Same 1,790-entry dictionary as the CLI, JSON-bundled at build (zero runtime parse cost).

# Cursor / VSCodium / Zed / Gitpod / Theia / code-server (Open VSX)
code --install-extension sayit.pronounce
# or the listing: https://open-vsx.org/extension/sayit/pronounce

Now live on Microsoft Marketplace too: ext install sayit.pronounce in VS Code. See marketplace listing.

  • Hover over kubectl, YAML, Ghostty, wagmi… β†’ tooltip with IPA + πŸ”Š Play + β˜… Star link.
  • βŒ˜β‡§' β€” speak selection.
  • Status bar πŸ”Š sayit β€” click to speak the current selection.
  • Welcome walkthrough β€” 4-step onboarding on first install.
  • Pronounce: Search dictionary… β€” fuzzy-find all 1,790 entries.

Source: integrations/vscode/. Cross-platform as of v0.3 β€” macOS say, Linux espeak-ng, Windows PowerShell.

Chrome / Edge / Brave extension

Click any tech word on any webpage β†’ popup with IPA + audio. Same 1,790-entry dictionary; same Web Speech API as pronounce.renlab.ai. Sideload only for now (not yet on Chrome Web Store).

Download pronounce-chrome-0.1.0.zip from the latest release β†’ unzip β†’ chrome://extensions/ β†’ Developer mode β†’ Load unpacked.

Source: integrations/chrome/.

How the dictionary works

data/pronunciations.tsv is the single source of truth β€” tab-separated, 1,790 entries, covering:

  • Cloud / DevOps: kubectl, nginx, Kubernetes, helm, Istio, Envoy, Prometheus, Grafana, Terraform, Argo, Knative, etcd, containerd, runc, Podman, ...
  • Languages / Frameworks: Django, Vue, Vite, Pydantic, Bun, Deno, Hugo, Hono, Caddy, Svelte, Astro, Pinia, ...
  • Databases: PostgreSQL, Postgres, SQLite, MySQL, MongoDB, Cassandra, Redis, Ceph, ScyllaDB, ClickHouse, DuckDB, ...
  • CS jargon / acronyms: GIF, JSON, SQL, GUI, GNU, char, regex, sudo, tmux, chmod, WYSIWYG, ASCII, enum, NaN, SaaS, PaaS, ...
  • Distros / tools: Linux, Debian, Ubuntu, Arch, Nix, LaTeX, TeX, emacs, zsh, ...

Each entry has 10 columns: word | ipa | phon_us | alt_ipa | alt_phon_us | source_url | source_label | category | confidence | notes. The phon_us column is Apple's Speech Synthesis phoneme set, injected into say via [[inpt PHON]]…[[inpt TEXT]]. This is what gives the intended reading rather than whatever the TTS would have inferred from the letters.

Local override: drop a ~/.config/say-it/pronunciations.local.tsv and it takes precedence.

What works today

  • βœ… macOS β€” any word, via the built-in say engine. Zero dependencies.
  • βœ… 1,171 of 1,790 entries carry a citable source β€” the rest are confidence-tagged, no fabricated citations.
  • βœ… Audible multi-reading awareness β€” contested words audibly chain alternates with "or:".
  • βœ… --alt [N], --all, --solo, --why, --json, --md, --no-dict, list, search, quiz, repl, stream, doctor, export, benchmark, badge, cheatsheet.
  • βœ… Claude Code skill + MCP server for AI-side pronunciation questions.
  • βœ… Browser PWA β€” installable, offline-capable, instant search, voice-mic search, interactive quiz.
  • βœ… Editor integrations β€” Raycast, Alfred, VS Code, Cursor, Codex, Kiro, Continue.
  • βœ… 🌐 Live site β€” pronounce.renlab.ai (every word browsable, audio, source citation) + /zh (Chinese landing).

What's coming

See DESIGN.md for the architecture.

  • ☁️ Cloud TTS (opt-in ElevenLabs / OpenAI) for the names native TTS still mangles.
  • πŸ“š Anki export for vocabulary drills.
  • πŸŒ— Light theme on the v2 homepage (already shipped on word/SEO pages).

Shipped since this list was written: Windows (PowerShell) + Linux (espeak-ng) backends, and say-it update (now a fast dictionary refresh; --full reinstalls the CLI).

⭐ Support β€” start with a star

The dictionary is free and MIT. The single highest-leverage thing you can do is star the repo β€” it's the signal that pulls in more contributors, more PRs, more creator-clarified entries.

Optional, if it's saved you real standup pain:

Dollars cover hosting (Vercel/Cloudflare/Open VSX), domain renewals, MiniMax narration credits for promo videos, and time to track down creator citations for new entries.