Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Assetic Laravel Package

cartalyst/assetic

Cartalyst Assetic is a Laravel asset pipeline package for defining collections, applying filters, and compiling, combining, and caching CSS, JavaScript, LESS, SCSS, and CoffeeScript. It offers a configuration-driven workflow to organize front-end assets and serve optimized files.

View on GitHub
Deep Wiki
Context7

Cartalyst Assetic is a Laravel integration for Assetic, the PHP asset management library. It lets you define asset collections, apply filters, and serve combined or compiled CSS/JavaScript through Laravel’s service container and configuration.

  • Laravel service provider and configuration for Assetic asset collections
  • Combine and minify CSS/JavaScript assets
  • Apply Assetic filters for preprocessing and optimization
  • Publish compiled assets into public paths
  • Simple, framework-friendly asset management
Frequently asked questions about Assetic
How do I install cartalyst/assetic in Laravel?
Install it with Composer (for example composer require cartalyst/assetic, pinned to the exact version your lockfile dictates), then register the package's service provider in your application config. Publish the package configuration so you have an editable file for defining asset collections and filter chains; the exact publish command depends on whether you are on Laravel 4.x or 5.x. After publishing, your views can request named collections through the provided facade or container binding.
Which Laravel and PHP versions does cartalyst/assetic support?
The package is an era-appropriate integration written for Laravel 4.x and 5.x on PHP 5.x through 7.x, and it pulls in Assetic plus matching symfony components from that period. It was not built or tested against modern Laravel releases, so treat it as legacy-only. Before committing to it, run composer why-not php and composer why-not laravel/framework to confirm your target stack actually resolves.
How do I define an asset collection with cartalyst/assetic?
Collections are declared in the package's publishable configuration file: each collection has a name, an array of source CSS or JavaScript files, and an ordered list of filters to apply. Views then reference the collection by name, and the package resolves the sources, runs the filters, concatenates the output, and writes a compiled artifact to your public path. Because the workflow is configuration-driven, most changes to your pipeline are config edits rather than code edits.
Can cartalyst/assetic compile LESS, SCSS, and CoffeeScript?
Yes, through Assetic filters for those preprocessors, which is one of the package's advertised capabilities. Be aware that those filters historically shell out to external binaries such as lessc, sass, or coffee, and Composer does not declare those binaries as dependencies. If a binary is missing or the wrong version, compilation can degrade silently rather than failing loudly, so verify each binary on every environment including CI.
How do I combine and minify CSS and JavaScript with cartalyst/assetic?
Combining happens automatically for a collection: every source file listed for that collection is concatenated into a single compiled output file. Minification is applied by adding the relevant Assetic filters (such as the JS and CSS compression filters) to that collection's filter chain in the config. Order matters in the filter chain, so list preprocessors before compressors.
Where does cartalyst/assetic write compiled assets, and how do I publish them?
Compiled artifacts are written into public paths, typically under an assets or similar output directory configured per collection, so they can be served directly by the web server. Make sure the target directory exists and is writable by the process running the compile step. On deployment, run the compile step as part of your release process and confirm the generated files are present before the app switches to the new release.
Is cartalyst/assetic still maintained?
There is effectively no maintenance signal: minimal stars, no dependents, and no activity that suggests upcoming releases. That means there will be no upstream fix when the next PHP or Symfony compatibility break arrives. The realistic mitigation is to vendor the package into your own repository, assign a named owner for patches, and document the known failure signals rather than expecting upstream help.
Does cartalyst/assetic work with PHP 8 and Composer 2?
Often it does not, because the package pulls era-appropriate symfony components and filter libraries that routinely conflict with PHP 8 and Composer 2's stricter dependency resolution. Treat a clean composer why-not php result as the single go/no-go checkpoint before any delivery commitment. Using --ignore-platform-reqs is only defensible inside a frozen container where the runtime is pinned and verified.
How do I clear cached assets when I change a filter configuration?
Assetic's asset cache does not key off filter configuration changes, so editing a filter chain can leave stale compiled output in place. Clear the cache and recompile explicitly as part of any config change, and verify the emitted file's contents rather than assuming it was rebuilt. This matters because the failure mode is a broken-looking page in production rather than a failed build that stops a deploy.
Should I use cartalyst/assetic in a new Laravel project, or what are the alternatives?
No, it should not be introduced into a modern Laravel application; it is only defensible where an existing Assetic pipeline is already running on Laravel 4.x or 5.x. For greenfield work, use the framework's current first-party tooling (Vite in modern Laravel, or Mix on older branches) or a Node-based asset pipeline. A related concern is supply-chain visibility: assets bundled through this pipeline are invisible to npm audit, Dependabot, and most scanners, which is a strong argument for a toolchain your security stack can actually see.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo