Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

This plugin is no longer maintained. Feel free to fork it if it is of use to you.


Sass asset handling plugin for Play 2.x. Implemented as sbt plugin.


Sass compiler needs to be installed for plugin to work. This means that sass executable needs to be found in path. Sass can be installed by by installing sass gem.

gem install sass

You can verify that sass has been installed by following command:

% sass -v
Sass 3.1.16 (Brainy Betty)


Plugin versions are linked to different Play versions. Each Play-version has some differences in how plugin is enabled. Please select suitable instructions below.

After following the instructions *.sass and *.scss files in app/assets directories will then be automatically compiled to *.css files. Files starting with _-character will be left out from compilation as per Play convention.

Play 2.3

Add following to your projects project/plugins.sbt

resolvers += "Sonatype OSS Releases" at ""

addSbtPlugin("net.litola" % "play-sass" % "0.4.0")

After that you'll need to enable plugin in build.sbt.

lazy val root = (project in file(".")).enablePlugins(PlayScala, net.litola.SassPlugin)

If you would like to pass your own command line arguments to Sass call, you can do it with .settings call. For example to use Compass you should append following after previous line.

	sassOptions := Seq("--compass")

Play 2.2

Add following to your projects project/plugins.sbt

resolvers += "Sonatype OSS Releases" at ""

addSbtPlugin("net.litola" % "play-sass" % "0.3.0")

In addition you'll need to add settings to your project. On Play 2.2 this is done by modifying build.sbt and appending following line:


If you would like to pass your own command line arguments to Sass call, you can do it by overriding SassPlugin.sassOptions. For example to use Compass you can use following:


net.litola.SassPlugin.sassOptions := Seq("--compass")

Play 2.0 & 2.1

Add following to your projects project/plugins.sbt:

resolvers += "Sonatype OSS Releases" at ""

addSbtPlugin("net.litola" % "play-sass" % "0.2.0")

For 2.0 use version 0.1.3.

After that you should do following changes to project/Build.scala.

import net.litola.SassPlugin

val main = PlayProject(appName, appVersion, appDependencies, mainLang = SCALA).settings( SassPlugin.sassSettings:_* )


Source Files

This plugin expects .scss your files to be located in PROJECT_ROOT/app/assets, or some sub-folder of that folder.

Linking to generated CSS

The app/assets directory is mapped to the root path in the running app, so for instance the output of this SCSS file:


can be accessed via this import:

<link rel="stylesheet" href=""test.css")">


The newest version only supports Play 2.3. If you need support for older Play versions, please use earlier plugin versions.

  • 0.4.0 [2014-07-28] Supports Play 2.3 (Thanks to guofengzh and hrlqn)

  • 0.3.0 [2013-09-25] Supports Play 2.2 (Thanks to Nilanjan Raychaudhuri and Zarkus13)

  • 0.2.0 [2013-03-01] Supports Play 2.1

  • 0.1.3 [2013-02-04] Sass command line options can be overridden. Do not override settings in plugin (Thanks to Kenji Yoshida). Made play-sass available via Sonatype.

  • 0.1.2 [2012-11-16] Minimal windows support by Kalle Bertell. Changed to use play 2.0.4.

  • 0.1.1 [2012-08-10] Dependency tracking for imported files. Should behave correctly with incrementalAssetsCompilation := true. Changed to use play 2.0.3, sbt 0.11.3.

  • 0.1.0 [2012-05-04] Initial release


This plugin is based on Johannes Emerich's play-stylus plugin for handling Stylus assets.


Copyright (c) 2012-2014 Juha Litola

MIT-style license, see details from LICENSE file.


Sass asset handling for Play Framework 2.0 *DEPRECATED*







No packages published