node package manager
Love JavaScript? Your insights can make it even better. Take the 2017 JavaScript Ecosystem Survey ยป



Advanced web-based frontend for Aria2-JSONRPC.

Main interface


  1. Node.js backend to manage the aria process, create destination and config directories, etc.
  2. You can shut down the Node.js backend as well as the web-frontend and aria will keep downloading in the backround. Fire up the server and web ui anytime later to get a status update.
  3. JSON-based transport to ensure lightweight and fast data transfers with minimal markup overhead.
  4. Uses websockets to communicate with aria process. Will have support for websockets in the browser side soon.


  1. Install Aria 2 from the site or from your distribution's package repositories.
  2. Install Node.js (and NPM) from the site or from your distribution's package repositories.
  3. $ sudo npm install -g berserker


  1. (First Run) $ berserker
  2. This will create file settings.json under the $HOME/.berserker folder.
  3. Edit settings.json.
    1. Keys in the aria2c property should be valid aria2c options (POSIX long version) without the '--'.
    2. Any value enclosed in curly braces (like {HOME}) will be replaced by the value of the corresponding environment variable.
  4. $ berserker
  5. Open http://localhost:8000/ (Or whatever port you have set in $HOME/.berserker/settings.json).


  1. Your Aria2 executable must have support compiled for the aria2.multicall function.
  2. If aria was not built with websocket support, use the restify or http connector instead (See settings.json).