Skip to content
Automated Download Queue for Communities to take the best use of Internet bandwidth
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
scripts Even fork with scorelab/Bassa Jan 8, 2018
.travis.yml Protractor UI Tests and API Endpoint tests For Bassa Jan 30, 2018
LICENSE Merge branch 'master' into howtousevideo Feb 18, 2018
docker-compose.yml Update docker-compose.yml Dec 25, 2017
robots.txt Adds -y option to installs Apr 2, 2017


Build Status Codacy Badge Docker Build Status PyPI PyPI Gitter

Automated Download Queue for Enterprise to take the best use of Internet bandwidth


Bassa solves the problem of wasting internet bandwidth by queuing a download if it is larger than a given threshold value in high traffic and when the traffic is low, it completes the download of the files. After the files are downloaded, the users can get their files from the local servers which do not require external internet bandwidth.

Main functionalities

  • Provides an interface for users to add their downloads as links or torrent magnet links
  • Provide users an interface to view and download the files in local server
  • Provide a rating system to users to rate the files residing in local server
  • Automatically start and stop downloading in given time frame
  • Automatically clean the disks and make room for new downloads
  • Notify user when his/her download is completed
  • Mark inappropriate downloads
  • Provides admins an interface to deal with inappropriate files


Note: Windows users can check the installation guide here.

First clone the Repository git clone


Use python 3 instead of Python 2

  $ ./
  $ cd components/core/
  $ sudo python3 develop


Database Setup

  1. Type below in a MySql terminal.
create database Bassa
  1. Type below in the root of project.
mysql -u root -p  Bassa < Bassa.sql
  1. Open components/core/ and setup database username and password.

Test Server

  $ cd components/core/
  $ python3


Bassa UI

Install dependencies with

$ cd ui/
$ npm install

To start

run gulp serve


In the first time you login, the credentials would be as follows.

  • username - rand
  • password - pass


Make sure you have aria2 installed.

run aria2c --enable-rpc


How to Use Bassa

  • After Setting up Bassa, Login/Register.There are two types of users in Bassa- (1) The Admin and (2) The Normal Users.
  • A user can add a link through the webapp and Bassa stores it in the local server right away. This way multiple users can add various links, but the downloads won’t start right away.
  • The organisation admin can start the downloads at a time of his/her liking.
  • Then the users who had added links for certain files can download them from the local servers at a much higher speed.
  • You can even watch a video tutorial for the same on Youtube

Autoformat JS with Prettier

Find more plugins here

Run UI unit tests

	$ cd ui/
	$ npm test OR $ yarn test 
You can’t perform that action at this time.