NewCode with Beto MCP
Oyelo app preview

Oyelo

A native iOS reading-to-audio app. Study SwiftUI, provider APIs, background playback, widgets, and Live Activities in one private codebase.

Keep up with what matters, on your terms

Save an article worth your attention. Listen on a walk, during a workout, or as you wind down. Oyelo turns the reading you choose into a private audio library, with a voice and provider you control.

The app is free to use with your own ElevenLabs, OpenAI, or Google Gemini API key. Providers charge separately for generation. There is no Oyelo account or shared audio catalogue.

Oyelo is in beta. The source is available to Code with Beto Pro members so you can study the implementation and build your own version. This is a native SwiftUI project for iOS 26 and later.

What is inside

  • Import and review: a Share Extension, article extraction, pasted text, duplicate detection, and review before creating audio.
  • Provider integration: device-only Keychain credentials, separate voice/model choices, streaming downloads, and saved generation checkpoints.
  • Everyday listening: offline audio, playback speed, chapters, an Up next queue, sleep timers, and listen-later reminders.
  • Native system surfaces: Now Playing, Home Screen widgets, interactive Live Activities, and adaptive Library/detail navigation.
  • A personal library: editable titles and symbols, favorites, generation history, listening stats, and optional device-backup eligibility.
  • A first listen without setup: an original Mars fact narrated with OpenAI Nova and bundled for offline playback.

What you can learn

Follow an article from a share-sheet import to a saved narration. See how the app separates extraction, optional text preparation, speech generation, and playback so that changing a title does not regenerate audio or lose your place.

The code also covers the less visible work: recovering saved sections, avoiding automatic retries after an uncertain paid request, preserving a Live Activity during a cold playback intent, and distinguishing reported provider usage from unavailable billing information.

The repository includes unit and UI tests, verification notes, and a small React/Vite landing page. The notes identify remaining device checks; neither a Live Activity nor a background task guarantees unlimited generation time on iOS.

Run it

  1. Clone the private repository and open in Xcode 27.1 or later.
  2. Select the Oyelo scheme and an iPhone simulator, then build and run.
  3. Try the bundled Nova sample. Add your own provider key when you want to create audio from your reading.

For a physical device, select your development team and configure the documented bundle IDs and App Group. Provider keys and signing credentials are not included.

Included with Pro

Pro members get the complete Oyelo source through the private Code with Beto GitHub organization, alongside the other premium projects and courses. The free listening app and Pro source-code access are separate: you do not need Pro to use Oyelo.

Get Started Today

Get access now and make Oyelo your own.

Already a Pro member? Use Visit repo above. For access questions or feedback, email beto@codewithbeto.dev.