Image Storm Ć© uma API de edição de imagens desenvolvida em Laravel 11, que permite a criação e manipulação de imagens de forma programĆ”tica. A API recebe um payload JSON com parĆ¢metros como dimensƵes, cor de fundo e componentes (textos, imagens em base64 ou URLs). A saĆda Ć© uma imagem PNG gerada com as especificaƧƵes fornecidas.
Siga os passos abaixo para instalar a aplicação:
git clone https://github.com/vhratts/image-storm.git
    cd image-stormcomposer install.env:Copie o arquivo de exemplo:
cp .env.example .envConfigure as variÔveis de ambiente, como APP_KEY e detalhes de conexão com o banco de
                    dados.
php artisan key:generatephp artisan serveA aplicação estarĆ” acessĆvel em http://localhost:8000.
POST /api-service/image-editor
A requisição deve ser enviada no corpo como application/json e conter os seguintes
                parâmetros:
text ou
                                    image/png).{
        "sample": {
            "width": 300,
            "height": 720,
            "background": "#ffffff"
        },
        "components": [
            {
                "overlay": 0,
                "position": {
                    "x": 0,
                    "y": 0
                },
                "size": {
                    "width": 300,
                    "height": 100
                },
                "collors": {
                    "content": "#292929"
                },
                "content": {
                    "type": "text",
                    "content": "Texto no componente de imagem"
                }
            },
            {
                "overlay": 1,
                "position": {
                    "x": 300,
                    "y": 0
                },
                "size": {
                    "width": 300,
                    "height": 100
                },
                "content": {
                    "type": "image/png",
                    "content": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."
                }
            }
        ]
    }curl -X POST "http://localhost:8000/api-service/image-editor" \
    -H "Content-Type: application/json" \
    -d '{
        "sample": {
            "width": 300,
            "height": 720,
            "background": "#ffffff"
        },
        "components": [
            {
                "overlay": 0,
                "position": {
                    "x": 0,
                    "y": 0
                },
                "size": {
                    "width": 300,
                    "height": 100
                },
                "collors": {
                    "content": "#292929"
                },
                "content": {
                    "type": "text",
                    "content": "Texto no componente de imagem"
                }
            },
            {
                "overlay": 1,
                "position": {
                    "x": 300,
                    "y": 0
                },
                "size": {
                    "width": 300,
                    "height": 100
                },
                "content": {
                    "type": "image/png",
                    "content": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."
                }
            }
        ]
    }'A ordem de sobreposição dos componentes depende do valor de overlay, onde números mais altos
                indicam camadas superiores. Certifique-se de fornecer URLs vƔlidos ou strings de Base64 corretamente
                formatadas para que as imagens sejam renderizadas com sucesso.