marmelab/yeoman-include

Name: yeoman-include

Owner: marmelab

Description: null

Created: 2013-08-08 18:00:16.0

Updated: 2014-05-29 14:52:27.0

Pushed: 2014-02-01 23:13:11.0

Homepage: null

Size: 278

Language: JavaScript

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

yeoman-include

Grunt task to include static templates with Yeoman

Getting Started

This plugin requires Grunt ~0.4.1

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

install grunt-include --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

t.loadNpmTasks('yeoman-include');
The “include” task
Overview

In your project's Gruntfile, add 2 sections named include & include:clean to the data object passed into grunt.initConfig().

t.initConfig({
clude: {
  myTask: 'source/*.html'


nclude:clean": {
  myTask: 'source/*.html'


nclude:clean-dest": {
  myTask: 'dest/*.html'



t.registerTask('build', [
'include:myTask',
// Run task like cssmin, ugligy ...
'include:clean:myTask',
'include:clean-dest:myTask'

Usage Examples
Default Options
t.initConfig({
  include: {
      build: '<%= yeoman.app %>/*.html',
      tmp: '.tmp/*.html'
  },

  "include:clean": {
      build: '<%= yeoman.app %>/*.html',
      tmp: '.tmp/*.html'
  },

  "include:clean-dest": {
      build: '<%= yeoman.dist %>/*.html',
      tmp: '.tmp/*.html'
  }


t.registerTask('build', [
'clean:dist',
'include:build',
'cssmin',
'concat',
'uglify',
'coffee',
'copy:dist',
'rev',
'usemin',
'include:clean:build',
'include:clean-dest:build'

Using grunt with server
Declare connect middleware
runtfile.js
le.exports = function (grunt) {
// load all grunt tasks
require('matchdep').filterDev('grunt-*').forEach(grunt.loadNpmTasks);

// configurable paths
var yeomanConfig = {
    app: 'app',
    dist: 'dist'
};

    var includeMiddleware = require('yeoman-include/middleware')(__dirname+'/'+yeomanConfig.app);

    // ...

    connect: {
            livereload: {
                options: {
                    middleware: function (connect) {
                        return [
                            includeMiddleware,
                            // ...
                        ];
                    }
                }
            },

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.

Release History

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.