Shots Studio Documentation
Welcome to the complete documentation for Shots Studio, your AI-powered screenshot management solution.
Getting Started
Shots Studio is an Android application that uses artificial intelligence to help you organize, search, and manage your screenshots. This guide will walk you through everything you need to know to get started.
What You'll Need
- Android device running Android 8.0 (API level 26) or higher
- Google Gemini API key (free to obtain)
- Storage permissions for accessing screenshots
- Internet connection for AI processing
Installation
Download the APK
- Visit the Releases page on GitHub
- Download the latest
shots-studio-v1.x.x.apk
file - On your Android device, enable "Install from unknown sources" in Settings
- Open the downloaded APK file to install
Only download APK files from official sources. Always verify the file integrity before installation.
First Launch
When you first launch Shots Studio, you'll be prompted to:
- Grant storage permissions
- Allow the app to access your device's screenshots
- Set up your Gemini API key
API Setup
Getting Your Gemini API Key
- Visit Google AI Studio
- Sign in with your Google account
- Click "Create API Key"
- Copy the generated API key
Configuring the API Key in Shots Studio
- Open Shots Studio
- Tap the menu icon (☰) in the top-left corner
- Select "Settings" → "API Key"
- Paste your API key and tap "Save"
// Example API key format:
AIzaSyBxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Your API key is stored locally on your device and is only used to communicate with Google's Gemini API. Shots Studio never stores your data on external servers.
Features Guide
AI-Powered Analysis
Shots Studio uses Google's Gemini AI to analyze your screenshots and extract:
- Text content - OCR extraction from images
- Object detection - Identifying elements in screenshots
- Context understanding - Understanding the purpose and content
- Smart tags - Automatic categorization and tagging
Processing Screenshots
- Tap the AI ⚡️ button in the top-right corner
- Select screenshots to process (or process all)
- Choose your AI model:
- Gemini 2.0 Flash - Fast processing, good for bulk operations
- Gemini 2.5 Pro - Detailed analysis, better for complex screenshots
- Wait for processing to complete
Collections
Creating Collections
Collections help you group related screenshots for easy access:
- Tap the "+" button on the main screen
- Select "Create Collection"
- Enter a name and description
- Optionally enable "Auto-Add" for automatic population
Auto-Add Feature
When Auto-Add is enabled, new screenshots matching the collection criteria will be automatically added. The AI determines relevance based on:
- Collection name and description
- Existing screenshots in the collection
- Content similarity analysis
Managing Collections
- Add screenshots - Long-press screenshots and select "Add to Collection"
- Remove screenshots - In collection view, long-press and select "Remove"
- Edit collection - Tap the edit icon in collection header
- Delete collection - In collection settings, tap "Delete Collection"
Search & Filtering
AI-Powered Search
Search your screenshots using natural language:
// Example search queries:
"screenshots with code"
"images containing text about recipes"
"social media posts"
"screenshots from last week"
"images with phone numbers"
Search Features
- Content search - Find by text content within screenshots
- Object search - Search for specific UI elements or objects
- Date filtering - Filter by creation date
- Tag filtering - Filter by AI-generated or manual tags
- Collection filtering - Search within specific collections
Advanced Search Operators
tag:work
- Find screenshots tagged with "work"date:2024-01-01
- Find screenshots from specific datecollection:recipes
- Search within "recipes" collection
Settings
API Configuration
- API Key - Manage your Gemini API key
- Default Model - Choose between Flash and Pro models
- Processing Quality - Adjust image quality for API calls
Storage & Performance
- Cache Management - Clear processed data cache
- Thumbnail Quality - Adjust thumbnail generation settings
- Background Processing - Enable processing in background
Privacy Settings
- Data Retention - How long to keep processed data
- Analytics - Anonymous usage analytics (opt-in)
- Crash Reporting - Help improve the app
Troubleshooting
Common Issues
API Key Not Working
- Verify the API key is correctly copied (no extra spaces)
- Check that Gemini API is enabled in Google Cloud Console
- Ensure you have sufficient API quota
Screenshots Not Processing
- Check internet connection
- Verify storage permissions are granted
- Try processing smaller batches
- Check API usage limits
App Crashing
- Clear app cache in Android settings
- Restart the app
- Check available device storage
- Update to latest version
Performance Optimization
- Process screenshots in smaller batches
- Use Gemini Flash for bulk operations
- Clear cache periodically
- Close other apps while processing
API Reference
Gemini API Integration
Shots Studio integrates with Google's Gemini API for AI processing. Here's how the integration works:
// API Endpoint
POST https://generativelanguage.googleapis.com/v1beta/models/gemini-pro-vision:generateContent
// Request Headers
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
// Request Body Example
{
"contents": [{
"parts": [
{
"text": "Analyze this screenshot and extract text content, identify objects, and suggest relevant tags."
},
{
"inline_data": {
"mime_type": "image/jpeg",
"data": "base64_encoded_image_data"
}
}
]
}]
}
Response Format
The API returns structured data that Shots Studio processes to extract:
- Extracted text content
- Identified objects and UI elements
- Suggested tags and categories
- Content description and context
Contributing
Development Setup
- Clone the repository:
git clone https://github.com/yourusername/shots-studio.git
- Install Flutter SDK (version 3.10 or higher)
- Install dependencies:
flutter pub get
- Run the app:
flutter run
Project Structure
lib/
├── main.dart # App entry point
├── models/ # Data models
│ ├── screenshot_model.dart
│ ├── collection_model.dart
│ └── gemini_model.dart
├── screens/ # UI screens
│ ├── home_screen.dart
│ ├── search_screen.dart
│ └── settings_screen.dart
├── services/ # Business logic
│ ├── gemini_service.dart
│ ├── storage_service.dart
│ └── notification_service.dart
└── widgets/ # Reusable UI components
Contributing Guidelines
- Fork the repository and create a feature branch
- Follow the existing code style and conventions
- Add tests for new functionality
- Update documentation as needed
- Submit a pull request with detailed description
Reporting Issues
Found a bug or have a feature request? Please:
- Check existing issues first
- Provide detailed reproduction steps
- Include device and Android version info
- Attach relevant screenshots or logs
Need more help? Contact our support team or open an issue on GitHub.