diff --git a/README.md b/README.md index 77615bb9ad..77e1190189 100644 --- a/README.md +++ b/README.md @@ -75,6 +75,8 @@ Selfoss uses [composer](https://getcomposer.org/) for installing external librar For the client side, you will also need JavaScript dependencies installed by calling `npm install` in the `public` directory. +If you want to create a package with all the dependencies bundled, you will additionally require [grunt](https://gruntjs.com/). After installing it, execute `npm install` in the selfoss directory to obtain the required tasks. Then you can run `grunt` command to produce a zipball. As a bonus, you can also use `grunt install` as a shortcut for installing the selfoss dependencies described above. + CREDITS ------- diff --git a/gruntfile.js b/gruntfile.js index 6131c65b4a..e8cc667e6a 100644 --- a/gruntfile.js +++ b/gruntfile.js @@ -151,7 +151,10 @@ module.exports = function(grunt) { } }); - grunt.registerTask('default', ['auto_install', 'composer:install:no-dev:optimize-autoloader:prefer-dist', 'versionupdater', 'compress']); + grunt.registerTask('client:install', 'Install client-side dependencies.', ['auto_install']); + grunt.registerTask('server:install', 'Install server-side dependencies.', ['composer:install:no-dev:optimize-autoloader:prefer-dist']); + grunt.registerTask('install', 'Install both client-side and server-side dependencies.', ['client:install', 'server:install']); + grunt.registerTask('default', ['install', 'versionupdater', 'compress']); grunt.registerTask('version', ['versionupdater']); grunt.registerTask('zip', ['compress']); };