Vibecode ekto

track this build4 phases, 12 steps, beginner friendly
KINDA · weekend project
price $29.99/moyou'd save $359.88/yrbuild time a weekendcategory 🔊 voice aireplaced by 0 people

The pipeline is no longer exotic: capture mic audio, segment it with a voice activity detector, transcribe with Whisper, translate, speak it back with a local TTS voice. An agent can wire that into a working local app in a weekend and it will genuinely translate a conversation. What it will not do out of the gate is stay graceful for an hour: chunk boundaries clip words, speaker turns bleed together, latency creeps as the buffer grows, and the sentence by sentence pacing that makes these apps usable in real conversation is a tuning problem, not a coding problem. You also get no phone app, which is where voice translation actually happens. Fine for a desk setup and travel prep, unconvincing when you are holding it out to a stranger in a market.

the project pack5 files · written for this build, step by step
README.md
# ekto · indie build

A speech translation pipeline where every design decision is a latency trade: recognition wants complete sentences, translation wants complete clauses, speech synthesis wants complete phrases, and a conversation wants none of them to take longer than a natural pause.

Estimated effort: **multi-day**. Work `BUILD_PLAN.md` top to bottom · every phase ends in a check that has to pass before the next one starts.

## Stack

| Part | Choice | Why |
| --- | --- | --- |
| Recognition | Streaming-shaped recognition with voice activity segmentation | the segment boundary decides both latency and translation quality |
| Translation | A model run per stable segment, never per partial word | translating a half-sentence produces confident nonsense |
| Synthesis | Speech generated per translated segment with a small queue | the output must not fall behind the conversation |
| Latency | A stated budget per stage, measured continuously | the pipeline is only usable if the total stays under a conversational pause |
| Runtime | Local models where they fit, with the trade stated | conversations are private and the alternative is sending both sides to a service |

## Before you start

Have every one of these ready. The plan assumes them from step one.

- [ ] **Python 3.12 or newer** · free
  - Why: Orchestrates recognition, translation and synthesis.
  - Get it: python.org or your package manager, then a virtual environment.
  - Verify: python3 --version prints 3.12 or higher
- [ ] **Speech recognition with word timings for both languages** · free locally, needs machine time
  - Why: Segmentation and latency measurement both depend on timings, and quality differs sharply between languages.
  - Get it: A local engine with models for both languages, checked for whether it emits word timings.
  - Verify: Both languages recognise with word timings
- [ ] **A translation model for your language pair** · free locally; per-character if hosted
  - Why: Quality varies enormously by pair, and a pair that translates poorly makes every other decision in the build irrelevant.
  - Get it: A local or hosted model for your specific pair, evaluated on real conversational speech rather than written text.
  - Verify: Twenty real conversational sentences translate acceptably in both directions
- [ ] **Speech synthesis for both languages** · free for open models
  - Why: Output speech is half the experience and synthesis latency is a large part of the total budget.
  - Get it: A local engine with voices for both languages, measured for time to first audio.
  - Verify: A sentence synthesises in both languages within your latency budget
- [ ] **A recorded real bilingual conversation** · free, and requires asking people
  - Why: Every parameter here is tuned against real speech with interruptions, overlaps and people who do not pause, and none of that appears in read-aloud test sentences.
  - Get it: Record a genuine conversation with both speakers' consent, including a stretch where they talk over each other.
  - Verify: A recording exists with natural pauses, overlap and at least one long unbroken utterance

## Quick start

Follow Phase 1 in `BUILD_PLAN.md`; it creates the project.

Then copy `.env.example` to `.env` and fill in the values it documents.

## Honest limits

This build deliberately does not replace:

- Commercial translation quality across many language pairs.
- Preserving the speaker's voice in translation.
- Simultaneous interpretation quality.
- Use where a mistranslation carries real consequence.
- Long session reliability: memory growth, drifting segmentation and dropped turns after the first 20 minutes
- Clean sentence by sentence pacing and turn detection, which is most of the perceived quality
- A mobile app, so no translating anything while standing up
- Offline or low-bandwidth behavior tuned for actual travel
- Latency budgets someone else already fought for: streaming partial results instead of waiting for a full segment

If one of those is essential to you, that is the reason to keep paying for ekto, and the README should say so rather than pretend.

$ choose a build depth, inspect the files, then open the complete pack in your agent

why people still pay

Because voice translation is judged entirely on the seconds between someone finishing a sentence and you hearing it, and on whether it still works on minute 40. A local build nails the demo and then frays: barge-in, background noise, two people talking over each other, the phone locking. Paying gets you a phone in your pocket that handles those cases without you adding VAD thresholds mid-conversation.

what you lose

xLong session reliability: memory growth, drifting segmentation and dropped turns after the first 20 minutes

xClean sentence by sentence pacing and turn detection, which is most of the perceived quality

xA mobile app, so no translating anything while standing up

xOffline or low-bandwidth behavior tuned for actual travel

xLatency budgets someone else already fought for: streaming partial results instead of waiting for a full segment

prior art · use these instead of building, if you'd rather

Nothing worth pointing at. That's why the prompt exists.

share on X ↗"I just replaced ekto ($29.99/mo) with one prompt"
questions
Vibecode ekto

Kinda. The core of ekto is buildable in a weekend with the prompt on this page, but there are real gaps: Long session reliability: memory growth, drifting segmentation and dropped turns after the first 20 minutes, Clean sentence by sentence pacing and turn detection, which is most of the perceived quality. Read the honest list above before committing.

How much does ekto cost?

ekto costs about $29.99/month (Monthly Unlimited PRO, checked 2026-08-18), which is $359.88 per year.

What do I lose by replacing ekto?

Honestly: Long session reliability: memory growth, drifting segmentation and dropped turns after the first 20 minutes; Clean sentence by sentence pacing and turn detection, which is most of the perceived quality; A mobile app, so no translating anything while standing up; Offline or low-bandwidth behavior tuned for actual travel; Latency budgets someone else already fought for: streaming partial results instead of waiting for a full segment. If any of those are load-bearing for you, keep paying.

Is there an open-source alternative to ekto?

No mature open-source alternative worth pointing at, which is exactly why the one-shot prompt on this page exists.