Skip to main content

Shadowing Space

YouTube Shadowing Practice

Guide

How it works, features, and shortcuts.

What is Shadowing?

Shadowing is a language learning technique where you listen to a native speaker and repeat what they say as closely as possible — matching their rhythm, intonation, and pronunciation.

Shadowing trains your ear and mouth together — pronunciation, listening, and speaking all at once. Using real YouTube content means real speech patterns instead of textbook phrases.

Getting Started

1

Paste a link

2

Practice

3

Compare

Paste a YouTube URL with subtitles — the app extracts sentences automatically. Choose Manual or Auto flow, play each sentence, then record yourself repeating it. Use seekable waveform playback to compare side-by-side and track progress on the dashboard.

Practice Modes

Manual

You control play, record, and navigation. Step through sentences at your own pace.

Best for focused, deliberate practice.

Auto

Hands-free loop: playback, then recording starts automatically. Voice activity detection stops recording on silence and advances to the next sentence.

Best for immersive, flow-state sessions.

Features

Live Waveform

Scrolling voice-memo style visualization during recording.

Waveform Playback

Seekable waveform display for recorded audio.

Speed Control

Adjust playback speed with presets or a custom value.

Transcript Toggle

Blur subtitles to train your ear (press T).

Progress Tracking

Per-video completion tracking on the dashboard.

Local-first

IndexedDB storage, no servers, no accounts.

Open Source & Privacy

MIT license. The full source is on GitHub.

All data stays in your browser (IndexedDB). Nothing is sent to a server.

You can self-host with Vercel, Docker, or any Node.js setup.

View on GitHub

Keyboard Shortcuts

KeyAction
SpacePlay / Pause
RRecord your voice
AReplay original sentence
BPlay your recording
MToggle flow (Manual / Auto)
TToggle transcript visibility
Previous sentence
Next sentence

FAQ

What kind of videos work best?

Videos with clear speech and accurate subtitles work best. Try TED talks, news clips, interviews, or language learning channels. Avoid videos with heavy background music, multiple overlapping speakers, or auto-generated captions that may be inaccurate.

My video failed to import. What should I do?

Make sure the video has subtitles (not just auto-generated ones, though those can work too). Some videos have embedding restrictions that prevent playback. Try a different video or check that the URL is correct.

Where is my data stored?

Everything is stored in your browser using IndexedDB. No data is sent to any server. Your recordings, progress, and imported videos all stay on your device.

How do I delete a video or my data?

On the Dashboard, each video card has a delete button. To clear all data, you can clear your browser site data for this domain.

Does it work on mobile?

The app is responsive and works on mobile browsers. However, keyboard shortcuts are only available on desktop. Recording works on most mobile browsers that support the MediaRecorder API.

Guide | Shadowing Space