Mobile ApplicationCompleted
EpicTales: AI-Powered Story Generator for Children
A native Android app that uses Google Gemini to generate age-appropriate stories on demand and reads them aloud with text-to-speech in nine languages.
DeveloperMustafa Kürşad Başer
Started: Dec 2024Completed: Apr 2025

EpicTales generates short, age-appropriate stories for children with Google Gemini and reads them aloud in the child's language with the device's text-to-speech engine. The app picks up where bedtime story books leave off: a parent picks an age group, taps a topic, and the app produces an original story along with narration, all in seconds.
For the parent and child:
- AI-generated stories: Each story is produced fresh through Gemini against an age-aware prompt
- Read-aloud narration: Built-in TTS reads the story in the selected language, with reasonable voice fallbacks when a specific voice is missing on the device
- Nine languages: English, Turkish, German, Spanish, French, Russian, Portuguese, Arabic, and Hindi
- Five age groups: 1 to 3, 4 to 5, 6 to 7, 8 to 9, and 10 and up, each with a distinct prompt template
- Offline reading: Previously generated stories are cached so they work without a connection
- Playful UI: Animated Jetpack Compose interface with cloud and sky themes built around Material 3
- Monetization: AdMob banner and rewarded ads
How it is built:
- MVVM: ViewModels per screen, with state hoisted into Compose
- Repository pattern: A single layer between the UI and the two data sources (Firestore and Gemini)
- Jetpack Compose with Material 3: Declarative UI with dynamic theming
- Firebase Firestore: Remote story store with offline persistence enabled
- TTS engine: Multi-language playback with graceful fallback when the requested locale is missing
- Hilt: Dependency injection across networking, repositories, and use cases
- Gemini API: Prompted with both the chosen age group and the chosen language to keep tone and vocabulary appropriate
The app is published on Google Play.
Project Gallery

1

2

3

4
Tech Stack
KotlinJetpack ComposeFirebase FirestoreGoogle Gemini APIHiltRetrofitCoroutinesText-to-Speech

