Skip to content
This repository was archived by the owner on Jul 17, 2022. It is now read-only.

eriwen/gradle-css-plugin

Repository files navigation

This plugin is no longer maintained!

Gradle CSS Plugin

Managing your CSS in a Gradle build is super easy now! Just add this to your build.gradle file:

Gradle 2.1+

plugins {
  id "com.eriwen.gradle.css" version "2.14.0"
}

Gradle 2.0-

// Grab the plugin from a Maven Repo automatically
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.eriwen:gradle-css-plugin:1.11.0'
    }
}

// Invoke the plugin
apply plugin: 'css'

// Declare your sources
css.source {
    dev {
        css {
            srcDir "app/styles"
            include "*.css"
            exclude "*.min.css"
        }
    }
}

// Specify a collection of files to be combined, then minified and finally GZip compressed.
combineCss {
    source = css.source.dev.css.files
    dest = "${buildDir}/all.css"
}

minifyCss {
    source = combineCss
    dest = "${buildDir}/all-min.css"
    yuicompressor { // Optional
        lineBreakPos = -1
    }
}

gzipCss {
    source = minifyCss
    dest = "${buildDir}/all.2.0.4.css"
}

LESS Support

css.source {
    dev {
        css {
            srcDir "app/styles"
            include "*.less"
        }
    }
}

lesscss {
    source = css.source.dev.css.asFileTree
    dest = "${buildDir}/styles"
}

Supports CSS Lint v0.9.10

csslint {
    source = css.source.dev.css.files
    dest = "${buildDir}/csslint.out"
}

Available Tasks and Options

combineCss

  • source = Collection of file paths of files to merge
  • dest = File/String Path for combined output

minifyCss (Uses the YUI Compressor)

  • source = File to minify
  • dest = File for minified output
  • (Optional) yuicompressor.lineBreakPos = -1 (default) Insert a line break after the specified column number

gzipCss

  • source = File to compress
  • dest = File/String path for compressed output

less

  • source = Files to transpile
  • dest = File/String output directory

csslint

  • source = Collection of file paths of files to analyze
  • dest = File for output
  • (Optional) format = 'compact' (default), 'text', 'lint-xml', or 'checkstyle-xml'
  • (Optional) warnings = (default is all) Collection of string ids for checks. Try csslint --list-rules to see all possible IDs
  • (Optional) errors = (default is none) Collection of string ids for checks. CAUTION: These cause a non-zero exit code and fail the build!

What, you want more? Let me know!

See Also

The Gradle JS Plugin!

About

Gradle plugin for working with CSS

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 11