PHPackages                             hnhdigital-os/laravel-php-elixir - 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. hnhdigital-os/laravel-php-elixir

AbandonedArchivedLibrary

hnhdigital-os/laravel-php-elixir
================================

Provides a PHP based equivalent to Node.js based Elixir

v3.0.4(7y ago)110416MITPHPPHP &gt;=5.6.0

Since Oct 23Pushed 7y agoCompare

[ Source](https://github.com/hnhdigital-os/laravel-php-elixir)[ Packagist](https://packagist.org/packages/hnhdigital-os/laravel-php-elixir)[ RSS](/packages/hnhdigital-os-laravel-php-elixir/feed)WikiDiscussions master Synced 2d ago

READMEChangelog (10)Dependencies (13)Versions (19)Used By (16)

```
__________.__          ___________.__  .__       .__
\______   \  |__ ______\_   _____/|  | |__|__  __|__|______
 |     ___/  |  \\____ \|    __)_ |  | |  \  \/  /  \_  __ \
 |    |   |   Y  \  |_> >        \|  |_|  |>     [
        ...
        Bluora\PhpElixir\ServiceProvider::class,
        ...
    ];
```

Usage
-----

[](#usage)

Run the command with the default config file (.elixir.yml).

`$ php artisan elixir`

Run the command with a custom config file:

`$ php artisan elixir --config=***`

Run the folder watcher to automatically run elixir on file changes with the default config file (.elixir.yml).

`$ php artisan elixir:watch`

Run the folder watcher to automatically run elixir on file changes using a custom config file:

`$ php artisan elixir:watch --config=***`

Configuration
-------------

[](#configuration)

Configuration for this package is done in the '.elixir.yml' located in your base directory or in the 'vendor/bluora/laravel-php-elixir/src/.elixir.yml.example'.

First declare the task name and the class name in the configuration file (these modules are installed by default).

```
modules:
    combine:
        - Bluora\PhpElixirCombine\CombineModule
    copy:
        - Bluora\PhpElixirCopy\CopyModule
    empty:
        - Bluora\PhpElixirEmpty\EmptyModule
    exec:
        - Bluora\PhpElixirExec\ExecModule
    replace:
        - Bluora\PhpElixirReplace\ReplaceModule
    revision:
        - Bluora\PhpElixirRevision\RevisionModule
    sass:
        - Bluora\PhpElixirSass\SassModule
```

List tasks using the first level in the YAML file or, if you need to declare more than one task module in different location of the config file, simply prepend the task with a number (unique to the task) and a hash. For example:

```
copy:
    xxx: yyy
1#copy:
    zzz: aaa
```

If you are testing php-elixir, you can stop tasks from running by prepending them with an exclaimation mark (!).

```
!copy:
    xxx: yyy
```

### Options

[](#options)

- dry-run - runs the script but doesn't actually do anything.
- verbose - provides further feedback of what is happening.

```
options:
    dry-run: true
    verbose: true
```

### Paths

[](#paths)

Paths lets you declare path constants that can be used in your other tasks.

```
paths:
    PATH_SASS: resources/assets/sass
    PATH_BOWER: bower_components
    PATH_PUBLIC_ASSETS: public/assets
    PATH_PUBLIC_BUILD: public/build
    PATH_RESOURCES: resources
    PATH_RES_ASSET_IMAGES: resources/assets/images
```

### Watch

[](#watch)

Watch configuruation item is only used by the elixir:watch console command.

```
watch:
    - PATH_RESOURCES?filter=!php
```

### Empty

[](#empty)

Deletes all files and folders in the listed paths.

```
empty:
    - PATH_PUBLIC_ASSETS
    - PATH_PUBLIC_BUILD
```

### Exec

[](#exec)

Executes a given file and arguments.

```
exec:
    php: artisan inspire
```

### SASS

[](#sass)

Processes and compiles a \*.scss file and outputs it to specified path.

Formatted as: {SOURCE\_FILE\_PATH}: {DESTINATION\_FILE\_PATH}

```
sass:
    PATH_SASS + /app.scss: PATH_PUBLIC_ASSETS + /vendor/app.css
```

### Combine

[](#combine)

Gets the contents of one or many files and combines it into the specified file.

Source folders can be specified with single level or multi-level lookup, and the ability to filter files by extension.

```
{DESTINATION_FILE}:
    - {SOURCE_FILE}
    - {SOURCE_FOLDER}

```

```
combine:
    PATH_PUBLIC_ASSETS + /vendor/jquery-combined.min.js:
        - PATH_PUBLIC_ASSETS + /vendor/jquery/jquery.min.js
        - PATH_PUBLIC_ASSETS + /vendor/jquery-ui/jquery-ui.min.js
    PATH_PUBLIC_ASSETS + /vendor/combined.js:
        - PATH_PUBLIC_ASSETS + /vendor/**?filter=js
```

### Copy

[](#copy)

Copies files from a file path or a folder path to a specified folder or file name.

Folder paths can be configured to get the top level directory using '/\*' or for all files and folders in path by using '/\*\*'.

Further configuration can be added using the standard query string format.

- filter - comma deliminated list of extensions.

```
copy:
    PATH_BOWER + /jquery/dist/jquery.min.js: PATH_PUBLIC_ASSETS + /vendor/jquery/
    PATH_RES_ASSET_IMAGES + /**?filter=png: PATH_PUBLIC_ASSETS + /images/
```

### Replace

[](#replace)

You can replace specific text in files or folder paths.

```
replace:
    PATH_PUBLIC_ASSETS + /vendor/vendor_name/styles.css:
        - ../img
        - vendor/vendor_name
```

### Revision

[](#revision)

Provides revisioning of files in a specified folder location.

Options that are available:

- hash\_length - defaults is 8.
- minify - default is false.
- php\_manifest - generates a php equivalent of the json revision file.

```
{SOURCE_FOLDER}:
    - {DESTINATION_FOLDER}
    - {REVISION_MANIFEST_FILE}
    - {QUERY_STRING_OPTIONS}

```

```
revision:
    PATH_PUBLIC_ASSETS:
        - PATH_PUBLIC_BUILD
        - PATH_PUBLIC_BUILD + /rev-manifest.json
        - hash_length=12&minify=true&php_manifest=true
```

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](https://github.com/bluora/laravel-php-elixir/blob/master/CONTRIBUTING.md) for details.

Credits
-------

[](#credits)

- [Rocco Howard](https://github.com/therocis)
- [All Contributors](https://github.com/bluora/laravel-php-elixir/contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](https://github.com/bluora/laravel-php-elixir/blob/master/LICENSE) for more information.

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity67

Established project with proven stability

 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.

###  Release Activity

Cadence

Every ~51 days

Recently: every ~196 days

Total

18

Last Release

2624d ago

Major Versions

v1.0.3 → v2.0.02016-12-05

v2.0.8 → v3.0.02017-01-13

PHP version history (3 changes)v1.0.1PHP &gt;=5.4.0

v1.0.3PHP &gt;=5.5.0

v2.0.0PHP &gt;=5.6.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/5270e3a3d1add4e39f12dfde3ce549999a26f759d7128056083ab07f475259f2?d=identicon)[bluora](/maintainers/bluora)

---

Top Contributors

[![RoccoHoward](https://avatars.githubusercontent.com/u/227896?v=4)](https://github.com/RoccoHoward "RoccoHoward (128 commits)")

---

Tags

phplaravelelixir

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/hnhdigital-os-laravel-php-elixir/health.svg)

```
[![Health](https://phpackages.com/badges/hnhdigital-os-laravel-php-elixir/health.svg)](https://phpackages.com/packages/hnhdigital-os-laravel-php-elixir)
```

###  Alternatives

[slimkit/plus

The Plus(ThinkSNS+) is a powerful, easy-to-develop social system built with Laravel.

2.2k2.4k](/packages/slimkit-plus)

PHPackages © 2026

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