# Changelog

All notable changes to this project will be documented in this file.

## [2.4.0] - 2025-08-08

### 🎨 New Features
- **Professional Photography Mode**: Added support for generating prompts with professional photography standards
  - Camera settings (aperture, shutter speed, ISO, focal length)
  - Standard, social media, and print resolutions
  - Equipment specifications
  - Lighting conditions and composition rules
  - Professional photography terms and styles
- New CLI options for photography mode:
  - `--photo`: Enable photography mode
  - `--format`: Set photo format (portrait, landscape, square, etc.)
  - `--style`: Set photo style (standard, social_media, print)
  - `--equipment`: Include camera equipment details
  - `--settings`: Include camera settings
  - `--terms`: Number of professional terms to include

### 🛠 Improvements
- Enhanced prompt generation with photography-specific metadata
- Improved CLI output formatting for photography prompts
- Added comprehensive documentation and examples
- Better handling of technical specifications in generated prompts

### 🐛 Bug Fixes
- Fixed issue with style validation in prompt generation
- Resolved edge cases in random style selection logic

### 🎨 New Features
- **Random Style Selection**: Added `--random` flag to generate prompts with a random art style
- **Custom Prompt Support**: Added `--custom` flag to use a complete custom prompt without style processing
- **Style Filtering**: Added `--random-from` option to randomly select from specific styles
- **New Art Styles**: Added 5 new art styles (Surrealist, Steampunk, Minimalist, Watercolor, Graffiti)
- **New Themes**: Added 5 new themes (Cyberpunk Dystopia, Mythological, Post-Apocalyptic, Space Exploration, Medieval Fantasy)

### 🛠 Improvements
- Enhanced CLI help text with better examples and usage patterns
- Improved error handling for style selection and prompt generation
- Updated README with comprehensive documentation for new features

### 🐛 Bug Fixes
- Fixed issue with style validation in prompt generation
- Resolved edge cases in random style selection logic

## [2.3.2] - 2025-08-08

### 🚀 New Features
- **Server Enhancements**: Updated server.js with improved error handling and logging
- **PollinationsService**: Added new features and optimizations to the image generation service

### 🐛 Bug Fixes
- Fixed issues in PollinationsService.js related to image generation
- Resolved server configuration issues in server.js

## [2.3.1] - 2025-08-06

### 🔒 Security
- **API Key Security**: Removed hardcoded Pollinations.ai API key from source code
- **Environment Variables**: All sensitive data now loaded from `.env` file only
- **Documentation**: Updated README with environment setup instructions

### 🐛 Bug Fixes
- Fixed issue with API key validation in PollinationsService
- Updated Swagger documentation to remove example API keys

## [2.3.0] - 2025-08-06

### 🚀 New Features
- **Pollinations.ai Integration**: Added image generation capabilities
- **API Documentation**: Added Swagger/OpenAPI documentation at `/api-docs`
- **Landing Page**: Created a professional landing page for the API
- **New Art Styles**: Added 10+ new art styles to the library
- **Batch Scripts**: Added `start_services.bat` and `cleanup.bat` for easier development
- **Image Generation**: Added web interface and CLI support for generating images

### 🛠️ Developer Experience
- **Code Organization**: Refactored API into modular route files
- **Error Handling**: Improved error messages and validation
- **Documentation**: Enhanced API documentation with examples
- **Versioning**: Updated version to 2.3.0 for the new release
- **Dependencies**: Added new dependencies for image generation and validation

### 🧹 Maintenance
- **Dependencies**: Updated all npm packages to latest versions
- **Cleanup**: Removed unnecessary files and improved project structure
- **Performance**: Optimized prompt generation and style handling

## [2.2.5] - 2025-08-06

### 🧹 Code Cleanup & Maintenance
- **Repository Cleanup**: Removed unnecessary and temporary files
- **Documentation Update**: Enhanced README with detailed setup instructions
- **Dependency Updates**: Ensured all dependencies are up-to-date
- **Bug Fixes**: Addressed minor issues in the web interface and API

### 🛠️ Developer Experience
- **Improved Build Process**: Streamlined development and production builds
- **Better Error Handling**: Enhanced error messages and logging
- **Code Organization**: Improved project structure and file organization


## [2.2.0] - 2025-01-05

### 🚀 Major Features Added
- **Advanced CLI Rewrite**: Complete 600+ line professional CLI implementation
- **Batch Processing System**: Parallel processing with up to 5 threads and progress tracking
- **Analytics & Metrics**: Comprehensive usage statistics, popular styles, daily patterns
- **Multi-format Export**: JSON, CSV, TXT export for all commands and data
- **Quality Control System**: 10-level quality scoring with professional enhancement terms

### ✨ Enhanced Features
- **Configuration Management**: Persistent settings with custom themes and preferences
- **History Tracking**: Complete command history with search and export capabilities  
- **Fuzzy Search Engine**: Intelligent search across styles, artists, subjects, themes
- **Mood Variations**: 5 mood types (dramatic, epic, peaceful, vibrant, mysterious)
- **Professional UI**: Beautiful ASCII banners, colored tables, custom borders
- **Performance Optimization**: Intelligent caching, spinners, progress indicators

### 🛠 Technical Improvements
- **Error Handling**: Robust error handling across all modules
- **Memory Management**: Optimized data loading and caching
- **Cross-platform**: Enhanced Windows, macOS, Linux compatibility
- **Dependency Management**: Removed problematic dependencies (ora, inquirer, boxen)
- **Custom Implementations**: Built-in replacements for external dependencies

### 🎨 New Commands
- `perchance-prompts batch` - Advanced batch generation with parallel processing
- `perchance-prompts stats` - Detailed usage analytics and metrics
- `perchance-prompts config` - Configuration management system
- `perchance-prompts history` - Command history with export
- Enhanced `generate` with mood, quality, verbose options
- Enhanced `styles/subjects/artists/themes` with search and export

### 🔧 Developer Experience
- **Testing Scripts**: Automated CLI testing capabilities
- **Documentation**: Comprehensive README with examples
- **Release Process**: Automated versioning and publishing
- **Code Quality**: ESLint integration and code standards

## [2.1.6] - 2025-01-04

### 🔧 Bug Fixes
- Fixed package.json syntax errors
- Resolved CLI dependency issues
- Improved data loading error handling
- Fixed NPM link functionality

### 📊 Data Updates
- Enhanced styles.json with more detailed descriptions
- Expanded artists database with popularity metrics
- Added theme categories with age group specifications
- Improved subject categorization

## [2.1.0] - 2024-12-20

### 🎯 Initial Release
- Basic CLI functionality
- Core encyclopedia data (styles, subjects, artists, themes)
- Simple prompt generation
- NPM package structure
- Basic documentation

---

### Legend
- 🚀 Major Features
- ✨ Enhancements  
- 🔧 Bug Fixes
- 📊 Data Updates
- 🛠 Technical Changes
