PHPackages                             agence-adeliom/lumberjack-assets - 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. agence-adeliom/lumberjack-assets

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

agence-adeliom/lumberjack-assets
================================

1.0.57(3y ago)07.0k↑83.3%MITPHPPHP &gt;=8.0.2

Since Sep 8Pushed 2y agoCompare

[ Source](https://github.com/agence-adeliom/lumberjack-assets)[ Packagist](https://packagist.org/packages/agence-adeliom/lumberjack-assets)[ RSS](/packages/agence-adeliom-lumberjack-assets/feed)WikiDiscussions 1.x Synced 2d ago

READMEChangelogDependencies (2)Versions (50)Used By (0)

\[READ-ONLY\] Lumberjack Assets
===============================

[](#read-only-lumberjack-assets)

Implementation of webpack into Lumberjack

Requirements
------------

[](#requirements)

- PHP 8.0 or greater
- Composer
- Lumberjack
- npm 8.0 or greater

Installation
------------

[](#installation)

```
composer require agence-adeliom/lumberjack-assets

# Copy the configuration file
cp vendor/agence-adeliom/lumberjack-assets/config/assets.php web/app/themes/YOUR_THEME/config/assets.php
```

### Using Webpack Encore

[](#using-webpack-encore)

```
cd web/app/themes/YOUR_THEME/
npm install @symfony/webpack-encore --save-dev
```

#### Creating the webpack.config.js File

[](#creating-the-webpackconfigjs-file)

Next, create a new `webpack.config.js` file. You can also check the documentation

```
const Encore = require('@symfony/webpack-encore');

// Manually configure the runtime environment if not already configured yet by the "encore" command.
// It's useful when you use tools that rely on webpack.config.js file.
if (!Encore.isRuntimeEnvironmentConfigured()) {
    Encore.configureRuntimeEnvironment(process.env.NODE_ENV || 'dev');
}

Encore
    // directory where compiled assets will be stored
    .setOutputPath('build/')
    // public path used by the web server to access the output path
    .setPublicPath('/build')
    // only needed for CDN's or sub-directory deploy
    //.setManifestKeyPrefix('build/')

    /*
     * ENTRY CONFIG
     *
     * Each entry will result in one JavaScript file (e.g. app.js)
     * and one CSS file (e.g. app.css) if your JavaScript imports CSS.
     */
    .addEntry('app', './assets/app.js')

    // When enabled, Webpack "splits" your files into smaller pieces for greater optimization.
    .splitEntryChunks()

    // will require an extra script tag for runtime.js
    // but, you probably want this, unless you're building a single-page app
    .enableSingleRuntimeChunk()

    /*
     * FEATURE CONFIG
     *
     * Enable & configure other features below. For a full
     * list of features, see:
     * https://symfony.com/doc/current/frontend.html#adding-more-features
     */
    .cleanupOutputBeforeBuild()
    .enableBuildNotifications()
    .enableSourceMaps(!Encore.isProduction())
    // enables hashed filenames (e.g. app.abc123.css)
    .enableVersioning(Encore.isProduction())

    .configureBabel((config) => {
        config.plugins.push('@babel/plugin-proposal-class-properties');
    })

    // enables @babel/preset-env polyfills
    .configureBabelPresetEnv((config) => {
        config.useBuiltIns = 'usage';
        config.corejs = 3;
    })

    // enables Sass/SCSS support
    //.enableSassLoader()

    // uncomment if you use TypeScript
    //.enableTypeScriptLoader()

    // uncomment if you use React
    //.enableReactPreset()

    // uncomment to get integrity="..." attributes on your script & link tags
    // requires WebpackEncoreBundle 1.4 or higher
    //.enableIntegrityHashes(Encore.isProduction())

    // uncomment if you're having problems with a jQuery plugin
    //.autoProvidejQuery()
;

module.exports = Encore.getWebpackConfig();
```

#### Register the service provider into web/app/themes/YOUR\_THEME/config/app.php

[](#register-the-service-provider-into-webappthemesyour_themeconfigappphp)

```
'providers' => [
    ...
    \Adeliom\Lumberjack\Assets\AssetsProvider::class
]
```

Usage
-----

[](#usage)

Backend usage
-------------

[](#backend-usage)

### Enqueue assets

[](#enqueue-assets)

```
add_action( 'wp_enqueue_scripts', function () {
	\Adeliom\Lumberjack\Assets\Assets::enqueue( 'custom-asset', 'your-entrypoint', [
        'version' => null,
        'deps' => [],
        'in_footer' => true,
        'media' => 'all',
        'attributes' => []
    ]);
});
```

Frontend usage
--------------

[](#frontend-usage)

```
{{ entry_script_tags('your-entrypoint') }}
# Add custom attributes
{{ entry_script_tags('your-entrypoint', {'async': true}) }}

{{ entry_link_tags('your-entrypoint') }}
# Add custom attributes
{{ entry_link_tags('your-entrypoint', {'media': 'print'}) }}

# Check if the entrypoint exist
{{ entry_exists('your-entrypoint')}}

# Get the path of your asset
{{ asset('images/logo.svg') }}

# Merge html class
{% set className = "" %}
{{ className|mergeClass('your-class', "another-class", "...") }}

{% set class = {
    base: "your-base-class", // base class
    default: { // default value
        margin: "sm"
    },
    margin: {
        xs: "...",
        sm: "..."
    }
}|mergeClass(margin|default("sm"), "your-custom-class")}
```

License
-------

[](#license)

Lumberjack Assets is released under [the MIT License](LICENSE).

###  Health Score

32

—

LowBetter than 69% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 66.7% 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 ~5 days

Recently: every ~0 days

Total

50

Last Release

1130d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/6471ac11bb69c46070e9140c9272639d3fe4b569c68ef8cde7cf60b0aa4ce9e6?d=identicon)[arnaud-ritti](/maintainers/arnaud-ritti)

![](https://www.gravatar.com/avatar/f84eb060084594eb8f047a7244c2bf238f7e677850a26457610402bc30030afe?d=identicon)[adeliom](/maintainers/adeliom)

---

Top Contributors

[![Emmadeliom](https://avatars.githubusercontent.com/u/68732127?v=4)](https://github.com/Emmadeliom "Emmadeliom (2 commits)")[![Antoinewaag](https://avatars.githubusercontent.com/u/51699943?v=4)](https://github.com/Antoinewaag "Antoinewaag (1 commits)")

---

Tags

wordpressassetstimberwebpackwebpack-encorelumberjack

### Embed Badge

![Health badge](/badges/agence-adeliom-lumberjack-assets/health.svg)

```
[![Health](https://phpackages.com/badges/agence-adeliom-lumberjack-assets/health.svg)](https://phpackages.com/packages/agence-adeliom-lumberjack-assets)
```

###  Alternatives

[ssch/typo3-encore

Use Webpack Encore in TYPO3 Context

107492.8k4](/packages/ssch-typo3-encore)[maba/webpack-bundle

Bundle to Integrate Webpack to Symfony

122268.4k4](/packages/maba-webpack-bundle)[ju1ius/webpack-assets-bundle

Integrates Webpack into Symfony2

1461.8k](/packages/ju1ius-webpack-assets-bundle)

PHPackages © 2026

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