risetechapps/risetools

Coleção de macros e helpers Laravel criados pela RiseTechApps.

Installs: 4

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Language:Blade

pkg:composer/risetechapps/risetools

1.0.0 2025-11-11 16:54 UTC

This package is auto-updated.

Last update: 2025-11-22 00:15:01 UTC


README

Pacote de macros, helpers e utilitários avançados da Rise Tech para aplicações Laravel.

Inclui agora:

AvatarGenerator — criação automática de avatares circulares com gradiente, iniciais e cores consistentes.
Ideal para APIs, dashboards, perfis de usuários e sistemas que precisam de avatares dinâmicos.

Compatível com Laravel 12+ e PHP 8.3+

Packagist Version License PHP Version Laravel

🚀 Instalação

composer require risetechapps/risetools

🎨 AvatarGenerator (Novo Recurso)

O AvatarGenerator permite gerar imagens de avatar totalmente automáticas com:

  • ✔ Gradiente circular elegante
  • ✔ Cores únicas e consistentes baseadas no nome
  • ✔ Iniciais automáticas (ex.: “Mateus Soares” → MS)
  • ✔ Fundo circular com transparência
  • ✔ Retorno como PNG binário
  • ✔ Retorno Base64 (ideal para API)
  • ✔ Salvamento como arquivo
  • ✔ Salvamento via Laravel Storage

🧪 Exemplo de Uso

➤ Gerar avatar como PNG

use RiseTechApps\RiseTools\Features\AvatarGenerator;

$avatar = new AvatarGenerator();
$png = $avatar->generate('Mateus Soares');

return response($png)->header('Content-Type', 'image/png');

➤ Gerar avatar em Base64

$avatar = new AvatarGenerator();

return [
    'avatar' => $avatar->generateBase64('Mateus Soares'),
];

➤ Salvar avatar em arquivo

$avatar = new AvatarGenerator();
$avatar->saveToFile('avatars/mateus.png', 'Mateus Soares');

➤ Salvar usando Storage do Laravel

$avatar = new AvatarGenerator();

$avatar->saveToStorage(
    'public',
    'avatars/mateus.png',
    'Mateus Soares'
);

⚙️ Funcionamento

O gradiente é criado com base em um hash MD5 do nome, garantindo que cada usuário tenha sempre as mesmas cores.
As iniciais são extraídas automaticamente:

Nome Resultado
Mateus Soares MS
Mateus MA
João da Silva JS
"" U

🛠️ Tecnologias Utilizadas

  • PHP GD / FreeType
  • Nenhuma dependência externa
  • Totalmente stateless

🧪 Testes

Este package utiliza o Orchestra Testbench para testes isolados.

  composer test

Cobertura:

  composer test-coverage

🛠️ Requisitos

Dependência Versão mínima
PHP 8.3
Laravel 12.x
GD + FreeType required
Orchestra Testbench 9.x
PHPUnit 11.x

🧑‍💻 Autor

Rise Tech
📧 apps@risetech.com.br
🌐 https://risetech.com.br
💼 https://github.com/risetechapps

🪪 Licença

MIT — veja arquivo LICENSE.