Ai Iamge Prompt Generator
import React, { useState } from 'react';
import { Copy, Download, RefreshCw, Wand2, Image, Edit3, Blend } from 'lucide-react';
const PromptGenerator = () => {
const [subject, setSubject] = useState('');
const [style, setStyle] = useState('photorealistic');
const [mood, setMood] = useState('vibrant');
const [lighting, setLighting] = useState('golden-hour');
const [colorPalette, setColorPalette] = useState('warm-tones');
const [composition, setComposition] = useState('wide-angle');
const [aspectRatio, setAspectRatio] = useState('16:9');
const [detailLevel, setDetailLevel] = useState('ultra-detailed');
const [postProcessing, setPostProcessing] = useState(['film-grain', 'lens-flare']);
const [customRequirements, setCustomRequirements] = useState('');
const [generatedPrompt, setGeneratedPrompt] = useState('');
const styles = {
'photorealistic': 'Photorealistic, high-quality photography',
'digital-painting': 'Digital painting with artistic brush strokes',
'cinematic': 'Cinematic quality with film-like aesthetics',
'anime': 'Anime style illustration',
'oil-painting': 'Traditional oil painting technique',
'watercolor': 'Watercolor painting style',
'cyberpunk': 'Cyberpunk digital art style',
'fantasy': 'Fantasy art illustration',
'minimalist': 'Clean minimalist design',
'vintage': 'Vintage retro aesthetic'
};
const moods = {
'vibrant': 'Vibrant, full of energy and life',
'mysterious': 'Mysterious, enigmatic atmosphere',
'serene': 'Peaceful, calm, and tranquil',
'dramatic': 'Intense, dramatic, emotionally powerful',
'futuristic': 'Forward-looking, sci-fi inspired',
'nostalgic': 'Warm, nostalgic, reminiscent',
'dark': 'Dark, moody, atmospheric',
'ethereal': 'Dreamlike, otherworldly beauty',
'epic': 'Grand, heroic, awe-inspiring',
'cozy': 'Warm, comfortable, inviting'
};
const lightingOptions = {
'golden-hour': 'Golden hour sunlight, warm soft glow',
'neon': 'Neon lighting, electric glow',
'natural': 'Natural daylight, even illumination',
'dramatic': 'Dramatic chiaroscuro lighting',
'backlit': 'Backlit silhouette effect',
'studio': 'Professional studio lighting',
'candlelight': 'Warm candlelight ambiance',
'moonlight': 'Cool moonlight illumination',
'sunset': 'Vibrant sunset colors',
'overcast': 'Soft diffused overcast lighting'
};
const colorPalettes = {
'warm-tones': 'Rich warm oranges, reds, and yellows',
'cool-tones': 'Cool blues, purples, and teals',
'monochrome': 'Black and white with subtle grays',
'neon': 'Electric neon colors - pink, cyan, purple',
'earth-tones': 'Natural earth colors - browns, greens, ochre',
'pastel': 'Soft pastel colors',
'high-contrast': 'Bold high-contrast color scheme',
'vintage': 'Muted vintage color palette',
'jewel-tones': 'Rich jewel tones - emerald, sapphire, ruby',
'custom': 'Custom color scheme'
};
const compositions = {
'wide-angle': 'Wide-angle cinematic shot',
'close-up': 'Intimate close-up perspective',
'aerial': 'Aerial bird\'s eye view',
'low-angle': 'Dramatic low-angle shot',
'portrait': 'Portrait orientation composition',
'panoramic': 'Sweeping panoramic view',
'macro': 'Detailed macro photography',
'street-level': 'Street-level human perspective',
'isometric': 'Isometric technical view',
'symmetrical': 'Perfect symmetrical composition'
};
const aspectRatios = ['1:1', '16:9', '21:9', '4:3', '3:2', '9:16', '2:3'];
const detailLevels = {
'basic': 'Clean, simple details',
'detailed': 'Well-defined details and textures',
'ultra-detailed': 'Ultra-detailed textures, sharp focus',
'hyper-realistic': 'Hyper-realistic, every detail perfect',
'artistic': 'Artistic interpretation with selective detail'
};
const postProcessingOptions = [
'film-grain', 'lens-flare', 'depth-of-field', 'bokeh',
'HDR', 'chromatic-aberration', 'vignette', 'bloom',
'color-grading', 'sharpening', 'noise-reduction', 'contrast-boost'
];
const generatePrompt = () => {
if (!subject.trim()) {
alert('Please enter a subject for your image!');
return;
}
const postProcessingText = postProcessing.length > 0
? postProcessing.join(', ').replace(/-/g, ' ')
: 'professional post-processing';
let prompt = `Create a highly detailed, ${styles[style]} of **${subject}**.
âš¡ Requirements:
- Style: ${styles[style]}
- Lighting: ${lightingOptions[lighting]}
- Mood & Atmosphere: ${moods[mood]}
- Detail Level: ${detailLevels[detailLevel]}
- Colour Palette: ${colorPalettes[colorPalette]}
- Camera / Composition: ${compositions[composition]}
- Post-processing: ${postProcessingText}
- Aspect Ratio: ${aspectRatio}
- Output Quality: High-resolution, professional grade`;
if (customRequirements.trim()) {
prompt += `\n- Additional Requirements: ${customRequirements}`;
}
setGeneratedPrompt(prompt);
};
const copyToClipboard = () => {
navigator.clipboard.writeText(generatedPrompt);
// You could add a toast notification here
};
const handlePostProcessingChange = (option) => {
setPostProcessing(prev =>
prev.includes(option)
? prev.filter(item => item !== option)
: [...prev, option]
);
};
return (
{/* Main Content */}
);
};
export default PromptGenerator;
✨ AI Image Prompt Generator
Create professional-grade prompts for AI image generation tools
{/* Left Panel - Controls */}
{/* Subject Input */}
{/* Grid Layout for Options */}
{/* Custom Requirements */}
{/* Generate Button */}
{/* Right Panel - Generated Prompt */}
) : (
)}
{/* Tips Section */}
Prompt Configuration
{/* Subject Input */}
setSubject(e.target.value)}
placeholder="e.g., a futuristic city skyline at sunset with flying cars"
className="w-full px-4 py-3 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent transition-all"
/>
{/* Style Selection */}
{/* Mood */}
{/* Lighting */}
{/* Color Palette */}
{/* Composition */}
{/* Aspect Ratio */}
{/* Detail Level */}
{/* Post-Processing Options */}
{postProcessingOptions.map(option => (
))}
Generated Prompt
{generatedPrompt ? (
{generatedPrompt}
Configure your prompt settings and click "Generate Prompt" to create your AI image prompt.
💡 Pro Tips
Be Specific: The more detailed your subject description, the better the AI can understand what you want.
Style Consistency: Choose styles that complement your subject matter for best results.
Experiment: Try different combinations of settings to discover unique artistic effects.