Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

km-stat: arms export statistics

This project is intended to provide accurate and accessible information about arms exports.


  • This file here.
  • There is some documentation in docs/manual/documentation.lyx that is partly in German. New parts in English.
  • There is lots of documentation in the program files and eventually maybe someone will make it autogenerate html docs from that.


  • The application is licensed as AGPLv3, see file COPYING. If an individual source file has no copyright notice then you should check and ask. Files provided by Django and d3 are BSD and files copied from elsewhere might have any other (hopefully compatible) license.

  • There are various files provided by governments and/or treaty organizations with license status unknown to me, but which should be fine because they can't realistically complain.

  • The data, specifically the database and documentation, is licensed CC BY-SA 4.0, as far as its copyright belongs to

    • Kaju Bubanja
    • Andreas Weibel
    • Lukas Bürgi

    and we ask you to credit GSoA/GSsA for our work. Please add your name if you contribute.


  • Members of GSoA Gruppe für eine Schweiz ohne eine Armee / GSsA Groupe pour une Suisse sans armée
    • Kaju Bubanja (first version in PHP)
    • Andreas Weibel (maintenance and other work on first version and database)
    • Lukas Bürgi (current rewrite, database)
    • Judith Schmid (valuable inputs on design)
    • Lewin Lempert (testing and feedback)
  • and others

Overview of current status:

  • Django/Python backend
  • frontend using mostly bare js (some d3.js ...) on top of Django templates for html/css
  • various scripts/workflows for gathering and cleaning up data in utils
  • fairly complete data set for Kriegsmaterial/üter from Switzerland since 2006, Dual Use is outdated
  • soon a cleaned up version of the wassenaar munitions lists, tools being developed in folder utils

Desired changes:

  • Sort needs to be enabled in front end
  • Display table with one row as sentence instead?
  • display dates better, maybe switch to displaying years and quarters because that's the most fine-grained we have
  • make countries click-able at least in table so that it changes to filter to include only that country
  • make dates click-able to choose that date onyl?
  • Multi language: English first because I can easily do the translation, get help for French and Italian
  • make database model English (don't know what I thought when making some parts German in the beginning)

Local installation:

  • apt-get install virtualenv default-mysql-server default-libmysqlclient-dev build-essential
  • echo "CREATE USER kriegsmaterialch IDENTIFIED BY 'Ze5uukaephooth3aivah'; CREATE DATABASE kriegsmaterialch; GR ANT ALL ON kriegsmaterialch.* to kriegsmaterialch" | mysql
  • mysql -u kriegsmaterialch -pZe5uukaephooth3aivah < backup.sql`
  • Create virtualenv: virtualenv -p python3 km-stat-workdir
  • Go into virtualenv: cd km-stat-workdir; . bin/activate
  • Clone: git clone
  • pip install stuff in requirements.txt file: pip install -r km-stat/requirements.txt
  • setup local settings (copy example)
  • setup database (backups are in folder database-backups)
  • ./km-stat/ runserver

Push to staging for first time:

  • Make sure your public key was added to the server
  • Add remote: git remote add km-staging git+ssh://
  • Configure ssh:
Host km-staging
    User 2167433
  • Create new config file and sftp to server: sftp put vhosts/default/kriegsmaterialch/
  • Now the utils/ script should work

Push to staging:

There is also a script in ./utils

  • pip install --upgrade Django mysqlclient pytz sqlparse
  • pip freeze | grep -e Django -e mysqlclient -e pytz -e sqlparse > kriegsmaterialch/requirements.txt
  • Check that everything still works, fix and/or commit
  • Commit
  • necessary to sftp config file to server?
  • necessary to upload new database to server?
  • utils/ km-staging


This project is intended to provide accurate and accessible information about arms exports








No releases published

Sponsor this project


No packages published