chasegiunta / scss
Compiler for SCSS
Installs: 8 559
Dependents: 1
Suggesters: 0
Security: 0
Stars: 15
Watchers: 1
Forks: 5
Open Issues: 5
Type:craft-plugin
pkg:composer/chasegiunta/scss
Requires
- php: ^8.0.2
 - craftcms/cms: ^4.0.0
 - scssphp/scssphp: ^1.10
 
Requires (Dev)
- craftcms/rector: dev-main
 
This package is auto-updated.
Last update: 2025-10-27 03:51:41 UTC
README
Compile SCSS to CSS in your templates
Requirements
This plugin requires Craft CMS 4.0.0 or later.
Installation
To install the plugin, follow these instructions.
- 
Open your terminal and go to your Craft project:
cd /path/to/project - 
Then tell Composer to load the plugin:
composer require chasegiunta/scss - 
In the Control Panel, go to Settings → Plugins and click the “Install” button for SCSS.
 
SCSS Overview
Craft conveniently offers {% css %} tags to include template-specific styles in the head of your page. This plugin takes that functionality a bit further by enabling support for compiling SCSS to CSS with {% scss %} using the scssphp library (https://github.com/scssphp/scssphp).
Configuring SCSS
By default, while working with devMode enabled, the styles generated will be output into a readable expanded format. If Craft is not running in devMode, the styles will be uglified into a compressed format.
You can configure these default output formats by copying the scss.php file from the plugin directory in your config folder.
Using SCSS
{% scss %}
... insert scss here ...
{% endscss %}
Given the following SCSS:
{% scss %}
/*! Comment */
.navigation {
    ul {
        line-height: 20px;
        color: blue;
        a {
            color: red;
        }
    }
}
.footer {
    .copyright {
        color: silver;
    }
}
{% endscss %}
Output format
Specifying an output format will take precedence over any default settings in config/scss.php.
{% scss expanded %}
/*! Comment */
.navigation ul {
  line-height: 20px;
  color: blue;
}
.navigation ul a {
  color: red;
}
.footer .copyright {
  color: silver;
}
{% scss compressed %}
/* Comment*/.navigation ul{line-height:20px;color:blue;}.navigation ul a{color:red;}.footer .copyright{color:silver;}
@import
When you import a file using the @import directive, the current path of your Craft install is used as the search path.
Brought to you by Chase Giunta