https://reisraff.github.io/phulp/
Há algumas semanas me deparei com um problema e logo pensei em como solucioná-lo; Basicamente, estava utilizando o npm somente para poder instalar e utilizar o gulpjs. Meu projeto tinha (CSS, Js, HTML, etc.), estava utilizando o gulpjs somente para minificar CSS, e JS, e para compilar LESS, logo percebi que poderia salvar um pouco de recurso de maquina, e tempo de deploy fazendo tudo isso somente com o PHP, então criei o PHULP.
O PHULP nada mais é do que o gulpjs portado para o PHP. O conceito principal é o mesmo, ou seja, é um task manager ou task runner(como dizem outras pessoas), voltado para tratamento de arquivos, neste caso para minificação, compilação de LESS, SASS e etc. Mas podendo ser utilizado até onde a imaginação alcançar.
Existe a possibilidade de se criar plugins para o PHULP da mesma maneira que o gulpjs, já existem alguns criados , você pode ver aqui.
Como usar
No repositório do github existe uma boa documentação de como se usar o PHULP, porém como é uma novidade, vou dar um exemplo simples, porém real, de utilização.
Instalando no seu projeto como composer
Somente precisamos executar o comando:
$ composer require reisraff/phulp
Escrevendo o PhulpFile.php
Criaremos uma task default que irá:
– iterar um diretório;
– encontrar somente arquivos que terminam com .php;
– imprimir o nome do arquivo no terminal;
– e por fim moveremos o arquivo para um diretório de destino;
<?php // Define the default task $phulp->task('default', function ($phulp) { // Define the source folder $phulp->src(['src/'], '/php$/') ->pipe($phulp->iterate(function ($distFile) { PhulpOutput::out($distFile->getName(), 'blue'); })) ->pipe($phulp->dest('dist/')); });
Executando o Phulp
Se você não configurou o bin-dir no composer:
$ vendor/bin/phulp
Pronto!
Além de encontrar e mover arquivos, o PHULP vem com alguns recursos no próprio core como, por exemplo:
– limpar um diretório específico;
– fazer watch de algum diretório;
– fazer match de arquivos com expressão regular;
– criar múltiplas tarefas(tasks);
– entre outros (entre no repositório e explore o código).
Agradecimentos
Gostaria de agradecer algumas pessoas que me ajudaram a criar o PHULP:
Gabriel Couto – Ideias
Rodrigo Cardoso – Ideias
Rogerio Prado – Ideias
Miguel Oliveira – Contribuição no Github
Thorsten Frommen – Contribuição no Github
Alex Silva – Contribuição no Github
Você pode ver esse mesmo post no meu site: https://reisraff.github.io/dist/#!/posts/1/5
Você pode ver esse mesmo post no medium: https://medium.com/@reisraff/phulp-4f980054e84e#.jmuwo0hwq
Powered by WPeMatico