项目作者: WebChemistry

项目描述 :
Configure css, js files in neon, yaml format and minify them with grunt.
高级语言: PHP
项目地址: git://github.com/WebChemistry/assets.git
创建时间: 2016-02-10T13:31:47Z
项目社区:https://github.com/WebChemistry/assets

开源协议:

下载


Registration

  1. extensions:
  2. assets: WebChemistry\Assets\DI\AssetsExtension
  3. assets:
  4. resources:
  5. - %appDir%/assets.neon

Assets config

Example in app dir create assets.neon:

  1. ## Front module
  2. front:
  3. css:
  4. "compiled/front.min.css":
  5. - "css/*.css"
  6. - "plugins/bootstrap/css/bootstrap.css"
  7. - "plugins/forms/css/jquery.datetimepicker.css"
  8. - "plugins/forms/css/selectize.css"
  9. - "plugins/forms/css/selectize.default.css"
  10. js:
  11. "compiled/front.min.js":
  12. - "plugins/nette/netteForms.js"
  13. - "plugins/nette/nette.ajax.js"
  14. - "plugins/nette/extensions/spinner.ajax.js"
  15. - "plugins/jquery-nette-forms/libraries.js"
  16. - "plugins/jquery-nette-forms/errors.js"
  17. - "plugins/forms/js/inputmask.min.js"
  18. - "plugins/forms/js/inputmask.regex.extensions.min.js"
  19. - "plugins/forms/js/jquery.inputmask.min.js"
  20. - "plugins/forms/js/jquery.datetimepicker.js"
  21. - "plugins/forms/js/selectize.min.js"
  22. - "plugins/bootstrap/js/bootstrap.js"
  23. - "js/main.js"
  24. "compiled/front.header.min.js":
  25. - "plugins/jquery/jquery.min.js"

Presenter

  1. class BasePresenter extends Nette\Application\UI\Presenter {
  2. use WebChemistry\Assets\TPresenter;
  3. }

Template

  1. <head>
  2. {$assets->getCss('compiled/front.min.css')} <!-- Debug mode: all css files, production: only minified -->
  3. {$assets->getJs('compiled/front.head.min.js')}
  4. </head>

Grunt task

package.json

  1. {
  2. "name": "Project",
  3. "version": "1.0.0",
  4. "devDependencies": {
  5. "grunt": "~0.4.5",
  6. "grunt-contrib-cssmin": "~0.14.0",
  7. "grunt-contrib-uglify": "~0.11.1",
  8. "grunt-nette-assets": "~0.1.0"
  9. },
  10. "dependencies": {}
  11. }

Install:

  1. npm install

Gruntfile.js:

  1. module.exports = function(grunt) {
  2. grunt.config.init({
  3. netteAssets: {
  4. target: {
  5. config: 'app/resource.neon',
  6. basePath: 'www/'
  7. }
  8. }
  9. });
  10. grunt.loadNpmTasks('grunt-contrib-uglify');
  11. grunt.loadNpmTasks('grunt-contrib-cssmin');
  12. grunt.loadNpmTasks('grunt-nette-assets');
  13. return grunt.registerTask('default', ['netteAssets', 'uglify', 'cssmin']);
  14. };

Run grunt:

  1. grunt