PHP code example of krecit / laravel-gemini-image

1. Go to this page and download the library: Download krecit/laravel-gemini-image library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

krecit / laravel-gemini-image example snippets


use KrecIT\LaravelGeminiImage\Facades\GeminiImage;
use Illuminate\Support\Facades\Storage;

// Returns raw binary image string
$rawImageBinary = GeminiImage::generateImage('A futuristic landscape', '16:9');

// Save it using Laravel Storage
Storage::disk('public')->put('futuristic.jpg', $rawImageBinary);

use KrecIT\LaravelGeminiImage\Facades\GeminiImage;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;

public function generateWithProduct(Request $request)
{
    // Array of UploadedFile
    $files = $request->file('references'); 

    // The package compresses to WebP, scales down, and frees RAM automatically
    $rawImageBinary = GeminiImage::generateImageWithReferences(
        'Improve the lighting of this product and place it on a wooden table',
        $files,
        '1:1'
    );
    
    Storage::disk('s3')->put('improved_product.jpg', $rawImageBinary);
    
    return response()->json(['success' => true]);
}

use KrecIT\LaravelGeminiImage\Facades\GeminiImage;
use Illuminate\Support\Facades\Storage;

// Devuelve el string binario crudo de la imagen
$rawImageBinary = GeminiImage::generateImage('Un paisaje futurista', '16:9');

// Guardar en disco (Ejemplo usando S3 o Local)
Storage::disk('public')->put('futurista.jpg', $rawImageBinary);

use KrecIT\LaravelGeminiImage\Facades\GeminiImage;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;

public function generateWithProduct(Request $request)
{
    // Array de UploadedFile
    $archivos = $request->file('references'); 

    // El paquete comprime en WebP, hace scaleDown y libera la RAM automáticamente
    $rawImageBinary = GeminiImage::generateImageWithReferences(
        'Mejora la iluminación de este producto y ponlo sobre una mesa de madera',
        $archivos,
        '1:1'
    );
    
    Storage::disk('s3')->put('producto_mejorado.jpg', $rawImageBinary);
    
    return response()->json(['success' => true]);
}
bash
php artisan vendor:publish --tag="gemini-image-config"
bash
php artisan vendor:publish --tag="gemini-image-config"