BorgWeb requires:

  • Python >= 3.4
  • some python dependencies, see install_requires in

Currently, only installation from git repo checkout is supported.

Use pip install -e . from the top-level BorgWeb directory to install it into same virtualenv as you use for BorgBackup.

To install the complete environment for development you can do the following:

# Install Python code and dependencies:
virtualenv --python=python3 borg-env
source borg-env/bin/activate
pip install tox pytest
git clone
cd borgweb
pip install -e .

# Install JS code and dependencies:
cd js
npm install

# Start the local Flask webserver:
cd ../../
mkdir logs

# Start the watch process and Browsersync
# In another shell navigate to `borgweb/js` and enter:
gulp watch


The builtin default configuration expects a “repo/” directory and a “logs/” directory in the current working directory. This is mostly development and testing, we do not expect normal setups to use the default configuration.

You can override this by pointing to a custom configuration file via the environment variable BORGWEB_CONFIG.

The configuration file must only have lines like this (and NO indentation):

KEY = value  # KEY must be all-uppercase, valid python syntax

See borgweb/ for the currently supported keys and example values.

Borg does by default not create log files. In order to create logs, the output of Borg must be redirected to a file.