A Flutter application that generates AI-powered children's stories with images. This app uses Gemini's AI capabilities for story generation and Supabase for secure data storage.
- 📖 Generate 10-page stories with AI-generated images
- 🎨 Customize title, description, theme, and target age
- 🏠 Beautiful home screen showing all created stories
- 📄 Page-by-page story reading navigation
- 🗑️ Delete stories you no longer need
- 💻 Flutter SDK (latest stable version)
- 🔑 Google Generative AI API key (Gemini)
- 🗄️ Supabase account and project
- 🧠 Basic knowledge of Flutter development
- Clone the repository:
git clone https://github.com/theprathamshinde/storyAI.git cd storyAI
- Copy the .env.template file to .env:
cp .env.template .env
- Edit the .env file and add your credentials:
SUPABASE_URL=https://your-project-id.supabase.co SUPABASE_ANON_KEY=your-supabase-anon-key GEMINI_API_KEY=your-gemini-api-key
-
Set up Supabase:
- Create a new Supabase project
- Go to the SQL Editor
- Copy and paste the contents of supabase_schema.sql
- Run the SQL queries to create the necessary tables
-
Install dependencies:
flutter pub get
- Run the app:
flutter run
- lib/main.dart - Entry point for the application
- lib/models/ - Data models
- lib/cubits/ - State management using Cubit pattern
- lib/repositories/ - Data sources and business logic
- lib/screens/ - UI screens
- flutter_bloc - For state management
- supabase_flutter - For backend database
- google_generative_ai - For AI story generation
- equatable - For value equality
- cached_network_image - For image caching
- flutter_dotenv - For environment variables
- uuid - For generating unique identifiers