KiWiTales is an innovative iOS application that brings the magic of storytelling to life through AI-powered story generation. Built from the ground up using SwiftUI, it offers a seamless and engaging experience for users to create, read, and share personalized stories.
- Gemini-powered story creation with customizable themes and prompts
- Interactive story generation process
- Beautiful illustrations for each story
- Personal library to store and manage generated stories
- Explore section to discover stories from other users
- Detailed book view with easy navigation controls
- Secure sign-in with multiple authentication methods
- User profile management
- Personal dashboard
- SwiftUI for modern, responsive UI
- Firebase for backend services and authentication
- Custom navigation and UI components
- Generative AI integration
- iOS 15.0 or later
- Xcode 13.0 or later
- Firebase account for backend services
- Clone the repository
- Install dependencies
- Set up configuration files:
- Copy
Development.xcconfig.template
toDevelopment.xcconfig
- Copy
GenerativeAI-Info.template.plist
toGenerativeAI-Info.plist
- Copy
GoogleService-Info.template.plist
toGoogleService-Info.plist
- Copy
- Configure API keys and credentials:
- In
Development.xcconfig
:- Add your Google Gemini API key
- Add your Stability AI API key
- Add your HuggingFace tokens
- In
GenerativeAI-Info.plist
:- Add your Google Gemini API key
- In
GoogleService-Info.plist
:- Replace with your Firebase configuration file from Firebase Console
- In
- Build and run the project
To run KiWiTales, you'll need the following API keys:
- Sign up at Google AI Studio
- Create an API key for Gemini Pro
- Sign up at Stability AI
- Create an API key for image generation
- Create a project in Firebase Console
- Add an iOS app to your project
- Download the
GoogleService-Info.plist
configuration file
- Sign up at HuggingFace
- Create an API token
The app follows a clean MVVM (Model-View-ViewModel) architecture with:
- Views: SwiftUI views for UI components
- ViewModels: Business logic and data management
- Models: Data structures and entities
- Components: Reusable UI elements
For any questions or feedback, please reach out to the development team.