zbundler - empacote HTML/CSS/SCSS a partir de qualquer projeto
Boa tarde!
Gostaria de apresentar meu projeto, chamado zbundler, que é mais um webpacker que empacota arquivos para distribuição web. No entanto, ele há uma diferença dos demais.
Ele não precisa ser instalado como dependência em seu projeto.
Você baixa o binário do zbundler e cria um arquivo de configuração na pasta do seu projeto, bem simples, focado no que precisa.
Além de ser compatível com qualquer tipo de estrutura de projeto, seja Node.JS, Laravel, um projeto PHP sem framework, um HTML/CSS "raiz"... zbundler é compatível com qualquer um.
Quando precisar compilar seu conteúdo, é só rodar um
zbundler build
E ele irá empacotar seus arquivos para um ou mais arquivos de saída.
Ele é compatível com CSS, Javascript e SCSS/SASS, e também inclui uma função de watch, que monitora edições em seus arquivos e compila eles novamente para a saída.
O arquivo de configuração é semelhante à isso:
[
{
"compilationMode": "CSS",
"label": "Minify CSS files",
"include": [ // pasta onde estão seus arquivos
"./css"
],
"output": [ // para onde vai compilar
"./dist/app.css"
]
},
{
"compilationMode": "JS",
"label": "Minify JS files",
"include": [
"./scripts"
],
"output": [
"./assets/dist.js"
],
"exclude": [
"/vendor/"
]
}
]
Você também pode incluir links no include
que o zbundler irá baixar o arquivo e compilar ele junto com a saída, dispensando a necessidade de ter um monte de <script src=
no seu <head>
.
O projeto é open-source e compatível com Windows, Linux e Mac OS. Está bem no começo, então podem haver instabilidades ao decorrer do tempo. Não exitem em abrir uma issue caso encontrem alguma.
No link do repositório tem mais informações de como usar o zbundler.
Tenho intenção de adicionar suporte para TypeScript e LESS no futuro.
O que você achou? O que poderia melhorar? Conte para mim nos comentários.