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

Compass Bundle Laravel Package

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.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

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:

  • Is there an existing legacy Symfony/Assetic codebase this actually targets, or is "Laravel" an assumption in the request?
  • Which Compass features are genuinely in use — sprite generation, @import 'compass' framework mixins, or just SCSS nesting?
  • Is a Ruby runtime already a hard dependency of the deploy pipeline?
  • What is the business driver: a one-time legacy migration, or ongoing use?
  • Why not Dart Sass + Vite, which covers the same authoring needs with active support?

Integration Approach

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):

  1. Inventory every .scss file and flag Compass-specific usage: @import "compass", sprite helpers (@include sprite(...)), compass-normalize, legacy image-url() helpers.
  2. Port those features to Dart Sass equivalents — sass:math, sass:color, sass-migrator, modern sprite tooling (e.g., vite-imagetools or spritesmith), and explicit url() paths.
  3. Move the build into the Vite/npm pipeline so fingerprinting and versioning stay consistent with the rest of the front end.
  4. Only if step 2–3 is blocked, run 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.

Operational Impact

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.
  • Composer dependency-resolution failures against modern Symfony/Laravel.
  • Silent CSS regressions where ported mixins do not match 1:1.
  • Sass deprecation warnings escalating to hard errors on newer toolchains.
  • Undetected breakage during Ruby version drift in CI base images.
  • No security patching of the Ruby toolchain in the deploy path.

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.

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.
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin