rodgermd/compass-bundle
A Symfony bundle that integrates the Compass Sass-based CSS authoring framework into your application, helping you configure and compile Compass stylesheets as part of your asset workflow.
Architecture fit: This is not a Laravel package — it is a Symfony 2-era bundle (rodgermd/CompassBundle) that wires the Ruby-based Compass CSS authoring framework into Symfony's dependency-injection container and Assetic asset pipeline. It has no composer.json service provider for Laravel, no publishable config, no Artisan commands, and no extra.laravel auto-discovery. There is therefore no architectural overlap with a modern Laravel app, which expects Vite (or historically Laravel Mix) to own asset compilation. The conceptual fit is near zero.
Integration feasibility: To use this in a Laravel codebase you would have to port its semantics — a DIC compiler pass invoking a Ruby binary as an Assetic filter — onto a Laravel service provider and a Vite plugin. That is not "adopting a package," it is reimplementing it. The only realistic path is to bypass the bundle entirely and shell out to compass compile as a standalone build step, which delivers none of the bundle's value.
Technical risk: High and largely unrecoverable. Indicators: 2 stars, 0 dependents, score 0.01, last meaningful activity in the Symfony 2 / PHP 5.x era. The underlying technology is itself retired — Compass has been dormant since roughly 2014 and Ruby Sass reached end-of-life in 2019 (Dart Sass is the only supported Sass implementation). Installing it would drag an unmaintained Ruby gem toolchain into CI, likely fail Composer resolution against Symfony 4+ / Laravel 9+, and expose the build pipeline to gem/OpenSSL/Ruby-version drift with no upstream fixes.
Key questions for the team:
@import 'compass' framework mixins, or just SCSS nesting?Stack fit: Poor. Laravel's asset contract is npm/Vite: entry points in resources/js/resources/css, hashed output in public/build, hot reload via the Vite dev server. Compass expects a config.rb, a Ruby gem install, and typically Assetic filter registration. There is no seam where the bundle plugs in without a rewrite.
Migration path (if Compass output is genuinely required):
.scss file and flag Compass-specific usage: @import "compass", sprite helpers (@include sprite(...)), compass-normalize, legacy image-url() helpers.sass:math, sass:color, sass-migrator, modern sprite tooling (e.g., vite-imagetools or spritesmith), and explicit url() paths.compass compile as a make assets pre-step emitting plain CSS into resources/css, and let Vite treat it as an input. Fork the bundle only if you need its exact conventions, and expect to own that fork indefinitely.Compatibility: Expect php: ^5.3 or ^7.x constraints and symfony/framework-bundle: ~2.x, which will not install under Laravel 9+ or Symfony 4+. Ruby-side, it pins Compass ~1.0 / Sass ~3.x, both EOL. Verify composer.json before assuming any modern compatibility — likely there is none.
Sequencing: Treat this as a decommissioning project, not an integration project. Validate the inventory first (what actually depends on Compass), then port to Dart Sass, then retire the Ruby toolchain from CI. Do not introduce the bundle as a new dependency; if it already exists in a legacy app, freeze it in place while the port proceeds.
Maintenance: Effectively unmaintained. Zero dependents means no downstream pressure to fix issues and no community patches. Adopting it transfers all maintenance burden to your team; any fork becomes a permanent internal liability for a 2-star, decade-old repository.
Support: No vendor support, no responsive maintainer path, and documentation/StackOverflow answers that predate modern Sass. Troubleshooting becomes archaeology on deprecated Ruby gem behavior rather than productive debugging.
Scaling: Ruby cold start plus full Compass recompilation dominates build time and does not match Vite's incremental, cached rebuilds. It scales poorly across many developers and CI runners; sprite generation works at small scale but becomes a bottleneck as asset count grows. There is no meaningful path to parallelized or distributed builds.
Failure modes:
bundle install / native gem extension failures under modern Ruby and OpenSSL.Ramp-up: Very high relative to delivered value. New developers are unlikely to have any Compass or Assetic experience; onboarding requires learning a retired Sass dialect and a Ruby build tool to ship CSS that Dart Sass + Vite produces today with active tooling, better performance, and a much larger hiring pool. The rational recommendation to stakeholders is: do not adopt; if already present, scope a time-boxed migration to Dart Sass + Vite and treat this bundle as a removal candidate.
How can I help you explore Laravel packages today?