openjutsu
One-click character swap for videos: an open-source, local Higgsfield Genjutsu alternative built on ComfyUI and MiniMax H3, with FLUX.3 Klein relighting.
Live captions with translations over whatever is playing on your Mac. Every line is kept for close listening, dictation, courses and review. Local-first, no account.
MediaGitHub @eeeeaseOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
Live bilingual captions and close listening for learning English on the Mac
Taken from the repository README
Loading the full README.
Read the full README ↗听浪 (Tīng Làng) means "listening to the waves." Sound travels in waves, and that is how English reaches you every day: wave after wave in podcasts, matches, games, films and meetings — mostly too fast to catch.
TingLang catches them for you. A small floating panel captions whatever your Mac is playing, puts a translation under every line and keeps every sentence. Later you replay them one wave at a time, write them down from memory, turn them into a short course and say them in your own words — until one day the same episode sounds slower. The speakers did not slow down; your ear got faster.
Plainly put: TingLang is a Mac app for learning English from what you already listen to. It is local-first — no account, no tracking — and recognises speech on your Mac, or with a cloud service and your own key if your Mac cannot run the models.
.tinglang file to send to a friend; double-click it to import.flowchart LR
A[Hear<br/>live captions over any app] --> B[Keep<br/>every line, timed and translated]
B --> C[Listen closely<br/>replay · loop · dictation]
C --> D[Learn<br/>a course from what you heard]
D --> E[Say<br/>review · shadowing · retelling]
Download Tinglang-<version>-macOS.zip from the latest release, unzip it and move Tinglang to Applications. It runs on macOS 14.2 or later, on Apple silicon and Intel.
The app is not signed or notarised yet, so macOS refuses to open it the first time (the message offers only Done and Move to Trash: choose Done). Open it once, then choose System Settings → Privacy & Security → Open Anyway (or run xattr -dr com.apple.quarantine /Applications/Tinglang.app in Terminal). Each release lists the zip's SHA-256 so you can check it with shasum -a 256. After that, TingLang tells you when a new version is out and can install it for you (it checks the zip's SHA-256 first).
Only the floating panel appears. Play something in English and press the orange record button (or ⌘⇧T). If nothing can recognise speech yet, TingLang asks how you want it done — a model on this Mac (one download) or a cloud API — in Settings → Speech recognition. The first time, macOS asks whether TingLang may record system audio. Stop, and View opens the sentence-by-sentence page; the Dock icon opens the main window.
For a sample course, open Library → Mine → Load the sample course. It is original text with about 36 seconds of synthetic speech, not a real interview or a copyrighted video.
You need macOS 14.2 or later, Xcode 26 or later, fvm and Python 3.10+.
git clone https://github.com/eeeease/TingLang.git
cd TingLang
fvm install
bash scripts/run_macos.sh
Toolchain details, signing with your own team, checks, versions and releases are in docs/BUILDING.md. What has actually been built and run on a Mac is recorded in docs/VERIFICATION.md, including what has not.
Everything lives in one folder on your Mac (Settings shows the exact path):
~/Library/Application Support/dev.eeeease.tinglang/Tinglang/
├── tinglang.sqlite # sessions, courses, drafts, practice, review, settings
├── media/ # media copied into the app
├── models/ # speech models you downloaded (delete them in Settings)
└── recordings/ # your own recordings (WAV)
Apart from the update check below, TingLang goes online only for things you turned on, each labelled where it runs: a cloud speech service you chose (audio goes to that service), AI providers you added (when you generate a course or test the connection), speech model downloads you approved, YouTube clips in the official embedded player, and a TingLang server after you sign in to it. Keys stay in the macOS Keychain.
Update check (on by default): once a day TingLang asks GitHub (api.github.com) whether a newer release is out. The request carries only the app version (GitHub sees your IP address, as with any website). A new version is downloaded, from GitHub, only when you press Update and restart. Turn the check off in Settings → General.
No account is needed and there is no analytics. The optional cloud account talks to a server only after you sign in; the official server is not open yet (docs/CLOUD.md).
To back up, quit TingLang and copy the whole folder. The Markdown export is not a backup.
Pronunciation scores, downloads from video sites, a sharing server and Discover content, editing subtitles inside a course, Windows and phones, signed and notarised builds. The cloud speech adapters follow each service's documentation but have not been run against the real services yet. See known limitations.
| BUILDING | Toolchain, run, checks, versions and releases |
| ARCHITECTURE | How the app is put together |
| COURSES | Course and subtitle formats |
| BRAND | Name, colours, the mark |
| TESTING · VERIFICATION | What to test, and what has actually been run |
| KNOWN_LIMITATIONS | What does not work yet |
Issues and pull requests are welcome. Please read CONTRIBUTING.md — the local-first ground rules, the checks to run and the licence of contributions — and AGENTS.md, which applies to people too. Security problems go through private reporting: see SECURITY.md.
TingLang is dual-licensed:
Contributions are accepted under the terms in CONTRIBUTING.md. Code and data from other projects keep their notices (NOTICE.md). The name and the mark are an independent design (docs/BRAND.md). Rights in course material are separate from the software licence: being viewable in public does not make something free to redistribute.
TingLang stands on the shoulders of two open-source projects:
Thanks also to the projects listed in NOTICE.md and the in-app licence viewer, among them sherpa-onnx, media_kit, drift, ECDICT and LiteLLM's model catalog.