Native iOS app for live speech-to-text captions in portrait. Speak into the mic, see large on-screen text, edit, save history, and optionally share nearby with Huddle.
→ Full product map (features, architecture, ops, known issues): docs/STEERING.md
| Item | Value |
|---|---|
| Display name | Closed Captioner |
| Bundle ID | RaveSociety.ClosedCaptioner |
| Min iOS | 16.4 |
| Marketing version | 1.2 |
| Architecture | MVVM |
en-US): long-press mic to start/stop; auto-stops after 15 secondscc-p2p): share captions over the local network; flick up on the canvas to send; incoming messages stay in the log strip, never the main captionClosedCaptioner)Export to text / PDF / HTML exists in code (ExportManager) but is not exposed in the UI yet.
| Location | Action |
|---|---|
| Top left | Settings |
| Top right | Huddle (off: Tap to join; on: ↓/↑ B/s) |
| Bottom left | Keyboard |
| Bottom center | Mic (long-press start/stop) |
| Bottom right | Eraser |
| Caption canvas | Flick up (±60°) to send when Huddle is on |
Day/Night, theme, and font live in Settings → Preferences, not on the main screen.
ContentView
├── SpeechService / MicController
├── AppStateViewModel (theme, day/night, overlays, Huddle prefs)
├── HistoryManager
├── P2PInboxService (Huddle)
├── PremiumManager (StoreKit 2)
└── ControlsView (chrome, banners, Huddle HUD)
Settings → Preferences | KPIs | Activity | Purchases
Details and file map: docs/STEERING.md.
ClosedCaptioner.xcodeproj in XcodeClosedCaptioner schemeClosedCaptioner.storekitAgent docs (deploy, Xcode Cloud, IAP, AdMob, Huddle test): AGENTS.md
MIT