PHPackages                             dz-id/laravel-html-minifier - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. dz-id/laravel-html-minifier

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

dz-id/laravel-html-minifier
===========================

Html Minifier adalah paket simpel untuk minify output Html, Css style, dan Javascript sebelum dirender ke browser untuk aplikasi Laravel anda.

179083[1 PRs](https://github.com/dz-id/laravel-html-minifier/pulls)PHP

Since Jul 10Pushed 4y ago1 watchersCompare

[ Source](https://github.com/dz-id/laravel-html-minifier)[ Packagist](https://packagist.org/packages/dz-id/laravel-html-minifier)[ RSS](/packages/dz-id-laravel-html-minifier/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependenciesVersions (1)Used By (0)

[![Build Status](https://camo.githubusercontent.com/f5c34e6a46a5b33df0a95eadb1a8ca53bb7c765bff2c7339688568b385f4f761/68747470733a2f2f7472617669732d63692e6f72672f72656e61746f6d6172696e686f2f6c61726176656c2d706167652d73706565642e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/dz-id/laravel-html-minifier)[![Latest Stable Version](https://camo.githubusercontent.com/b39bfb834b6b3202c481a3dfafc9219455705776302d9f8c0cfb60686d97fbaa/68747470733a2f2f706f7365722e707567782e6f72672f72656e61746f6d6172696e686f2f6c61726176656c2d706167652d73706565642f76657273696f6e)](https://packagist.org/packages/dz-id/laravel-html-minifier)[![Total Downloads](https://camo.githubusercontent.com/19aa4e4bc82c17c55130423de21e6032c9c2206cb011e6c00532c420f3bb4b06/68747470733a2f2f706f7365722e707567782e6f72672f72656e61746f6d6172696e686f2f6c61726176656c2d706167652d73706565642f646f776e6c6f616473)](https://packagist.org/packages/dz-id/laravel-html-minifier)[![License](https://camo.githubusercontent.com/f0788a2aafa389fd0a1ee1fb53deba76bb540a670006cbfcfc36a7826ce0f722/68747470733a2f2f706f7365722e707567782e6f72672f72656e61746f6d6172696e686f2f6c61726176656c2d706167652d73706565642f6c6963656e7365)](https://packagist.org/packages/dz-id/laravel-html-minifier)

Laravel Html Minifier
=====================

[](#laravel-html-minifier)

Adalah Paket simpel untuk minify HTML, Css Style, dan Javascript sebelum dirender ke browser untuk aplikasi Laravel anda.

Alat ini hanya bekerja jika output yang diberikan adalah bentuk struktur html yang valid meliputi tag html, head dan body. contohnya

- Html yang valid (akan diproses dan diminify)

```

```

- Html yang tidak valid (tidak diminify)

```

atau

```

Contoh Hasilnya :
-----------------

[](#contoh-hasilnya-)

[![Sebelum](example-output/before.jpg)](example-output/before.jpg)

[![Sesudah](example-output/after.jpg)](example-output/after.jpg)

Installasi
----------

[](#installasi)

> **Membutuhkan:**

- **[PHP 7.2.5+](https://php.net/releases/)**
- **[Laravel 6.0+](https://github.com/laravel/laravel)**

Tahap pertama anda bisa menginstall paket ini dengan [Composer 2x](https://getcomposer.org/download/)
-----------------------------------------------------------------------------------------------------

[](#tahap-pertama-anda-bisa-menginstall-paket-ini-dengan-composer-2x)

```
composer require dz-id/laravel-html-minifier
```

Publish konfigurasi file
------------------------

[](#publish-konfigurasi-file)

```
php artisan vendor:publish --provider="DzId\LaravelHtmlMinifier\HtmlMinifierServiceProvider"
```

Jangan lupa untuk mendaftarkan ke Global Middleware
---------------------------------------------------

[](#jangan-lupa-untuk-mendaftarkan-ke-global-middleware)

[\\DzId\\LaravelHtmlMinifier\\Middleware\\MinifyHtml::class](src/Middleware/MinifyHtml.php) dan Middleware lainnya harus didaftarkan ke kernel jika diperlukan, contoh :

```
// file : app/Http/Karnel.php

protected $middleware = [
    ....
    \DzId\LaravelHtmlMinifier\Middleware\MinifyHtml::class,         // middleware untuk minify html
    \DzId\LaravelHtmlMinifier\Middleware\MinifyCss::class,         // middleware untuk minify css style
    \DzId\LaravelHtmlMinifier\Middleware\MinifyJavascript::class, // middleware untuk minify kode javascript
];
```

Informasi Middleware
--------------------

[](#informasi-middleware)

##### [\\DzId\\LaravelHtmlMinifier\\Middleware\\MinifyHtml::class](src/Middleware/MinifyHtml.php)

[](#dzidlaravelhtmlminifiermiddlewareminifyhtmlclass)

`MinifyHtml::class` fungsinya adalah untuk minify html menghapus blank spasi dan juga baris baru menjadi satu baris.

**Contoh Hasil :**

- Sebelum diminify

```

        Laravel Html Minifier

       Laravel Html Minifier

```

- Sesudah diminify

```
Laravel Html MinifierLaravel Html Minifier
```

##### [\\DzId\\LaravelHtmlMinifier\\Middleware\\MinifyCss::class](src/Middleware/MinifyCss.php)

[](#dzidlaravelhtmlminifiermiddlewareminifycssclass)

`MinifyCss::class` fungsinya adalah untuk minify css style menghapus blank spasi dan juga baris baru menjadi satu baris.

**Contoh Hasil :**

- Sebelum diminify

```
body {
   background-color: salmon;
   width: 100%;
   height: 100%;
}
```

- Sesudah diminify

```
body{background-color:salmon;width:100%;height:100%}
```

##### [\\DzId\\LaravelHtmlMinifier\\Middleware\\MinifyJavascript::class](src/Middleware/MinifyJavascript.php)

[](#dzidlaravelhtmlminifiermiddlewareminifyjavascriptclass)

`MinifyJavascript::class` fungsinya adalah untuk minify kode javascript menghapus blank spasi dan juga baris baru menjadi satu baris.

Catatan: jangan menggunakan kode tanpa kurung kurawal (`{}`) untuk if, elseif, else, while, for, dll. ini akan menyebebkan kode anda error, contohnya

- kode yang disarankan

```
for (let i = 0; i  env("LARAVEL_HTML_MINIFIER_ENABLE", true),
```

##### Otomatis Menambahkan Semicolon Atau Titik Koma Diakhir kode Pada CSS

[](#otomatis-menambahkan-semicolon-atau-titik-koma-diakhir-kode-pada-css)

Jika kode css anda mengalami bug saat menggunakan `MinifyCss::class` silahkan setel bidang ini ke `false`.

```
// file: config/laravel-html-minifier.php

"css_automatic_insert_semicolon" => env("LARAVEL_HTML_MINIFIER_CSS_AUTOMATIC_INSERT_SEMICOLON", true),
```

##### Otomatis Menambahkan Semicolon Atau Titik Koma Diakhir kode Pada Javascript

[](#otomatis-menambahkan-semicolon-atau-titik-koma-diakhir-kode-pada-javascript)

Catatan: Jangan menggunakan jeda baris untuk while, do while, for, if, elseif, else, return, dll. ataupun kode tanpa kurung kurawal (`{}`). contohnya

- kode yang disarankan

```
var log = function(log) {
   return console.log(log);
}

let i = 0;

do {
    if (i == 5) {
       break;
    }
    i++;
    log("hello dunia");
} while (true);
```

- kode yang tidak disarankan, akan menyebabkan error jika mengaktifkan "js\_automatic\_insert\_semicolon"

```
var log = function(log) {
   return               // jeda
      console.log(log); // baris
}

let i = 0;

do
// jeda baris
{
    if (i == 5)  // tanpa
        break;   // kurung kurawal
    i++;
    log("hello dunia");
}
// jeda baris
while (true);
```

mungkin aja jika mengaktifkan bidang ini kode anda akan menjadi bug karena suatu kondisi yang salah dalam hal ini jika itu terjadi anda cukup menyetel bidang ini ke `false`

jangan lupa untuk selalu menggunakan titik koma pada kode javascript jika bidang ini disetel ke `false`

fungsi ini hanya berlaku jika menggunakan `MinifyJavascript::class`

```
// file: config/laravel-html-minifier.php

"js_automatic_insert_semicolon" => env("LARAVEL_HTML_MINIFIER_JS_AUTOMATIC_INSERT_SEMICOLON", true),
```

##### Menghapus Komentar HTML

[](#menghapus-komentar-html)

Cukup setel ke `true` untuk mengaktifkan dan setel ke `false` untuk menonaktifkan.

Fungsi ini hanya berlaku jika menggunakan Middleware `MinifyHtml::class`

```
// file: config/laravel-html-minifier.php

// setel bidang ini ke false untuk mematikan
"remove_comments" => env("LARAVEL_HTML_MINIFIER_REMOVE_COMMENTS", true),
```

##### Kaburkan Kode Javascript (Obfuscate)

[](#kaburkan-kode-javascript-obfuscate)

Catatan : jika ada mengaktifkan fungsi ini mungkin kode javascript anda akan menjadi panjang, Fungsi ini akan mengubah satu per satu dari setiap string / text ke `chr()` fungsi PHP dan didecode dengan `String.fromCharCode()` fungsi javascript.

Fungsi ini hanya berlaku jika kamu menggunakan Middleware `MinifyJavascript::class` jika bidang ini disetel ke `false` kode javascript hanya diminify tidak dikaburkan/Obfuscate

**Contoh Hasil :**

- Sebelum dikaburkan

```
alert(1);
```

- Sesudah dikaburkan

```
eval(((_,__,___,____,_____,______,_______)=>{______[___](x=>_______[__](String[____](x)));return _______[_](_____)})('join','push','forEach','fromCharCode','',[97,108,101,114,116,40,49,41,59],[]))
```

Dalam kasus ini kamu cukup menyetelnya ke `false` untuk menonaktifkan dan menyetelnya ke `true` untuk mengaktifkan

```
// file : config/laravel-html-minifier.php

// setel ke true untuk mengaktifkan
"obfuscate_javascript" => env("LARAVEL_HTML_MINIFIER_OBFUSCATE_JS", false),
```

##### Ignore / Abaikan Route

[](#ignore--abaikan-route)

Anda mungkin ingin mengonfigurasi paket untuk melewati beberapa rute.

```
// file : config/laravel-html-minifier.php

"ignore" => [
    "*/download/*", // Abaikan semua route yang mengandung download
    "admin/*",     // Abaikan semua route dengan awalan admin,
    "*/user"      // Abaikan route dengan akhiran user
]
```

Skip / Lewati dengan menambahkan attribute ignore--minify
---------------------------------------------------------

[](#skip--lewati-dengan-menambahkan-attribute-ignore--minify)

Kamu cukup menambahkan attribute `ignore--minify` dalam tag script / style untuk melewati proses minify.

Contoh :

```

    /* css kode */

   /* javascript kode */

```

Setiap tag style/script yang memiliki attribute `ignore--minify` akan dilewati tidak diminify.

Skip / Lewati View dengan menambahkan data "ignore\_minify" ke dalam view
-------------------------------------------------------------------------

[](#skip--lewati-view-dengan-menambahkan-data-ignore_minify-ke-dalam-view)

Kamu juga bisa melewati minify dengan memasukan data `"ignore_minify"` kedalam view

Contoh :

```
// View ini tidak diminify akan di skip.
return view("welcome", ["ignore_minify" => true]);
```

Lisensi
-------

[](#lisensi)

[MIT](LICENSE) (MIT)

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity29

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/9ddf2c8bdf3a8e951f23b08ff62d0837f1b200057f058fba499b5f853cb48866?d=identicon)[dz-id](/maintainers/dz-id)

---

Top Contributors

[![dz-id](https://avatars.githubusercontent.com/u/52864765?v=4)](https://github.com/dz-id "dz-id (12 commits)")

---

Tags

laravel-frameworklaravel8minifyminify-cssminify-htmlminify-javascript

### Embed Badge

![Health badge](/badges/dz-id-laravel-html-minifier/health.svg)

```
[![Health](https://phpackages.com/badges/dz-id-laravel-html-minifier/health.svg)](https://phpackages.com/packages/dz-id-laravel-html-minifier)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
