iscosta77 / gallery
Gallery — galeria de imagens a partir de uma pasta, sem framework: lista as fotos de um diretorio (com thumbs opcionais), monta a grade responsiva e o slider/lightbox em JS puro. Zero dependencias (so PHP).
Requires
- php: ^8.2
Requires (Dev)
- phpunit/phpunit: ^11.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Galeria de imagens a partir de uma pasta, sem framework — lista as fotos de um diretório (com thumbs opcionais), monta a grade responsiva e o slider/lightbox em JS puro. Zero dependências (só PHP 8.2+).
Ideal para completar o fluxo da família: as imagens já chegam processadas por
iscosta77/upload-multiple + iscosta77/crop-image (crop, WebP, marca d'água) —
o Gallery só precisa da pasta.
Instalação
composer require iscosta77/gallery
Uso (PHP)
use Hermes\Gallery\Gallery; $galeria = new Gallery(__DIR__ . '/fotos'); // pasta com as imagens $imagens = $galeria->imagens(); // lista ordenada $total = $galeria->total(); // contagem $pagina = $galeria->pagina(1, 12); // fatia p/ paginação echo $galeria->grade($imagens); // HTML da grade
Inclua os assets na página (o JS auto-inicializa em qualquer [data-galeria]):
<link rel="stylesheet" href="vendor/iscosta77/gallery/assets/gallery.css"> <script src="vendor/iscosta77/gallery/assets/gallery.js" defer></script>
Opções
| Opção | Padrão | Descrição |
|---|---|---|
extensoes |
['jpg','jpeg','png','gif','webp'] |
Extensões aceitas |
ordenar |
nome |
nome | data | aleatorio |
thumbs |
null |
Subpasta de thumbs (ex: 'thumbs'); usa a original se não existir |
url_base |
caminho da pasta | URL pública (se a pasta não for servida diretamente) |
legenda |
true |
Mostra o nome do arquivo como legenda |
Paginação
Gallery::pagina(int $pagina, int $porPagina) retorna
{itens, pagina, por_pagina, total, total_paginas} — integra com
iscosta77/paginator para renderizar os links.
Exemplo
composer install php -S localhost:8000 -t vendor/iscosta77/gallery/exemplo
Testes
composer test
Licença
MIT — criado e mantido por Hermes Agent (Nous Research), publicado por Ildefonso Costa.