-
-
Save sebv/ffcbf037e6e856e1010d to your computer and use it in GitHub Desktop.
Stylus config for Yeoman
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module.exports = function( grunt ) { | |
'use strict'; | |
// stylus task declaration | |
grunt.loadNpmTasks('grunt-contrib-stylus'); | |
// overidding compass task | |
grunt.registerTask('compass', ['stylus']); | |
// | |
// Grunt configuration: | |
// | |
// https://github.com/cowboy/grunt/blob/master/docs/getting_started.md | |
// | |
grunt.initConfig({ | |
// Project configuration | |
// --------------------- | |
// specify an alternate install location for Bower | |
bower: { | |
dir: 'app/components' | |
}, | |
// Coffee to JS compilation | |
coffee: { | |
compile: { | |
files: { | |
'temp/scripts/*.js': 'app/scripts/**/*.coffee' | |
}, | |
options: { | |
basePath: 'app/scripts' | |
} | |
} | |
}, | |
// Compass configuration was deleted | |
// Stylus configuration | |
stylus: { | |
compile: { | |
options: { | |
compress: true, | |
paths: ['node_modules/grunt-contrib-stylus/node_modules'] | |
}, | |
files: { | |
'app/styles/*.css': ['app/styles/*.styl'] | |
} | |
} | |
}, | |
// generate application cache manifest | |
manifest:{ | |
dest: '' | |
}, | |
// headless testing through PhantomJS | |
mocha: { | |
all: ['test/**/*.html'] | |
}, | |
// default watch configuration | |
watch: { | |
coffee: { | |
files: 'app/scripts/**/*.coffee', | |
tasks: 'coffee reload' | |
}, | |
// Compass watch configuration was deleted | |
// Stylus watch configuration | |
stylus: { | |
files: [ | |
'app/styles/**/*.styl' | |
], | |
tasks: 'stylus reload' | |
}, | |
reload: { | |
files: [ | |
'app/*.html', | |
'app/styles/**/*.css', | |
'app/scripts/**/*.js', | |
'app/images/**/*' | |
], | |
tasks: 'reload' | |
} | |
}, | |
// default lint configuration, change this to match your setup: | |
// https://github.com/cowboy/grunt/blob/master/docs/task_lint.md#lint-built-in-task | |
lint: { | |
files: [ | |
'Gruntfile.js', | |
'app/scripts/**/*.js', | |
'spec/**/*.js' | |
] | |
}, | |
// specifying JSHint options and globals | |
// https://github.com/cowboy/grunt/blob/master/docs/task_lint.md#specifying-jshint-options-and-globals | |
jshint: { | |
options: { | |
curly: true, | |
eqeqeq: true, | |
immed: true, | |
latedef: true, | |
newcap: true, | |
noarg: true, | |
sub: true, | |
undef: true, | |
boss: true, | |
eqnull: true, | |
browser: true | |
}, | |
globals: { | |
jQuery: true | |
} | |
}, | |
// Build configuration | |
// ------------------- | |
// the staging directory used during the process | |
staging: 'temp', | |
// final build output | |
output: 'dist', | |
mkdirs: { | |
staging: 'app/' | |
}, | |
// Below, all paths are relative to the staging directory, which is a copy | |
// of the app/ directory. Any .gitignore, .ignore and .buildignore file | |
// that might appear in the app/ tree are used to ignore these values | |
// during the copy process. | |
// concat css/**/*.css files, inline @import, output a single minified css | |
css: { | |
'styles/main.css': ['styles/**/*.css'] | |
}, | |
// renames JS/CSS to prepend a hash of their contents for easier | |
// versioning | |
rev: { | |
js: 'scripts/**/*.js', | |
css: 'styles/**/*.css', | |
img: 'images/**' | |
}, | |
// usemin handler should point to the file containing | |
// the usemin blocks to be parsed | |
'usemin-handler': { | |
html: 'index.html' | |
}, | |
// update references in HTML/CSS to revved files | |
usemin: { | |
html: ['**/*.html'], | |
css: ['**/*.css'] | |
}, | |
// HTML minification | |
html: { | |
files: ['**/*.html'] | |
}, | |
// Optimizes JPGs and PNGs (with jpegtran & optipng) | |
img: { | |
dist: '<config:rev.img>' | |
}, | |
// rjs configuration. You don't necessarily need to specify the typical | |
// `path` configuration, the rjs task will parse these values from your | |
// main module, using http://requirejs.org/docs/optimization.html#mainConfigFile | |
// | |
// name / out / mainConfig file should be used. You can let it blank if | |
// you're using usemin-handler to parse rjs config from markup (default | |
// setup) | |
rjs: { | |
// no minification, is done by the min task | |
optimize: 'none', | |
baseUrl: './scripts', | |
wrap: true, | |
name: 'main' | |
}, | |
// While Yeoman handles concat/min when using | |
// usemin blocks, you can still use them manually | |
concat: { | |
dist: '' | |
}, | |
min: { | |
dist: '' | |
} | |
}); | |
// Alias the `test` task to run the `mocha` task instead | |
grunt.registerTask('test', 'server:phantom mocha'); | |
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"author": "", | |
"name": "app_name", | |
"version": "0.0.0", | |
"dependencies": {}, | |
"devDependencies": { | |
"grunt-contrib-stylus":"*" | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment