You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Sandro Boehme (JIRA)" <ji...@apache.org> on 2015/02/27 21:30:04 UTC

[jira] [Created] (SLING-4462) Resource Editor :: Integrate Node.js, Grunt and npm for frontend libraries

Sandro Boehme created SLING-4462:
------------------------------------

             Summary: Resource Editor :: Integrate Node.js, Grunt and npm for frontend libraries
                 Key: SLING-4462
                 URL: https://issues.apache.org/jira/browse/SLING-4462
             Project: Sling
          Issue Type: Improvement
          Components: Extensions
    Affects Versions: Resource Editor 1.0.2
            Reporter: Sandro Boehme
            Assignee: Sandro Boehme


The goal is to configure the Resource Editor for frontend tests (Jasmine, Karma, end to end via Webdriver) and to optimize its frontend build configuration. To accomplish that the Frontend Maven Plugin (https://github.com/eirslett/frontend-maven-plugin) is used. It installs Node.js, Grunt and npm locally within in the project and makes it available in a Maven build.

Contra:
The npm repository that needs to be ignored for SVN is generated within the project folder.

Pro:
o Avoids that I have to check in the frontend libraries and Bootstrap Less sources to SVN as they can be copied from the local npm repo during the build process.
o Eases the listing of the 3rd party licenses of used npm package as the npm package 'nlf' for example can be used to list the licenses in a specific depth of transitive dependencies. It allows a good fix for SLING-4205.
o Better supported libraries:
- BDD Unit Tests with different browsers
Via Maven:
https://github.com/karma-runner/maven-karma-plugin (31 Stars)
Via npm:
https://github.com/karma-runner/karma (4760 Stars)

- Less CSS compiler and watch functionality
Via Maven:
https://github.com/marceloverdijk/lesscss-maven-plugin (155 Stars, not supported anymore)
https://github.com/marceloverdijk/lesscss-java (151 Stars, not supported anymore)

Via npm:
https://github.com/gruntjs/grunt-contrib-watch (1380 Stars)
https://github.com/gruntjs/grunt-contrib-less (519 Stars)

- Minification:
Via Maven:
https://github.com/davidB/yuicompressor-maven-plugin (80 Stars)
Via npm:
https://github.com/gruntjs/grunt-contrib-uglify (850 Stars)
https://github.com/gruntjs/grunt-contrib-cssmin (513 Stars)

- BDD (Jasmine) End to End Tests are not available via Maven



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)