Platform for Mozilla Support
Python JavaScript HTML CSS Other
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.circleci Push docker images always and early. Feb 26, 2018
authority [Bug 1238055][Bug 1225606] Upgrade Django to 1.8. Feb 25, 2016
bin Remove DB migrations run from app start Mar 16, 2018
configs Remove Vagrant. Nov 20, 2017
docker Copy bower_components to final image. Feb 22, 2018
docs Add a small test and update docs Mar 5, 2018
jsi18n Collect jsi18n files via staticfiles to get hashed filenames. Feb 24, 2016
k8s fix whitespace Mar 16, 2018
kitsune Fix Bug 1445673: Remove optimizely code from old account. Mar 16, 2018
media Added CORS to images Jun 11, 2013
requirements Upgrade gunicorn to 19.7.1 Mar 15, 2018
scripts Add surveygizmo credentials and run only on prod. Mar 13, 2018
static Simplfy static CORS rules. Jan 5, 2016
tests Move WebQA Jenkinsfile under tests dir. Nov 23, 2017
wsgi Setup Django's SecurityMiddleware (#3055) Feb 14, 2018
.dockerignore Split dockerfiles. Nov 30, 2017
.editorconfig Add circleci. Dec 1, 2017
.env-build Update env variables Mar 1, 2018
.env-dist Preserved legacy trackEvent function, added analytics.js back to bundle Mar 13, 2018
.env-test Persistent DB connection when testing. Mar 6, 2018
.eslintrc Fix eslint problems. Dec 15, 2015
.gitignore Add commander deploy helper. Mar 16, 2018
.pre-commit-config.yaml Upgrade to pip8 Nov 20, 2017
.travis.yml Switch docker repo to mozmeao/kitsune. Nov 23, 2017
CONTRIBUTORS.rst Replace manually curated list of contributors with link to generated … May 21, 2015
Jenkinsfile Add Jenkins Pipeline for docker image building and testing. Nov 23, 2017
LICENSE Fix a thing Ricky found that I missed when I fixed the other issue Apr 5, 2013
Procfile Add celery worker and cron commands. Feb 5, 2018 README includes all steps to build working dev env Feb 23, 2018
bower.json Fix Bug 1380708 implement static tabzilla Jul 31, 2017
contribute.json Update and serve contribute.json (#2905) Aug 3, 2017
docker-compose.yml Revert "Add max_allow_packet to mysql container." Mar 6, 2018
gulpfile.js Fix a lot of lint errors. Jul 29, 2015
jenkins.yml Switch docker repo to mozmeao/kitsune. Nov 23, 2017 Update docker. Nov 20, 2017
newrelic.ini Add newrelic configuration file. (#3051) Feb 8, 2018
package.json Update docker. Nov 20, 2017
setup.cfg Run tests on travis. Nov 20, 2017
tox.ini Add Jenkinsfile pipeline Nov 15, 2016


Kitsune is the platform that powers SuMo (

It is a Django application. There is documentation online.

The legacy branch contains the codebase and deployment scripts for use in the SCL3 datacenter. Only security fixes and changes to support product launches are allowed to go in.

The master branch is where the active development of Kitsune happens to modernize, containerize and bring to Kubernetes. Feature Pull Requests are not allowed in unless related with the current effort to move to Kubernetes.

You can access the staging site at

See what's deployed


To setup a local Kitsune development environment:

#. Fork this repository & clone it to your local machine.

#. Download base Kitsune docker images:

docker pull mozmeao/kitsune:base-latest
docker pull mozmeao/kitsune:base-dev-latest

#. Build Kitsune docker images. (Only needed on initial build or when packages change)

docker-compose -f docker-compose.yml -f docker/composefiles/build.yml build base
docker-compose -f docker-compose.yml -f docker/composefiles/build.yml build dev

#. Copy .env-dist to .env

cp .env-dist .env

#. Create your database

docker-compose -f docker-compose.yml -f docker/composefiles/dev.yml run web ./ migrate

#. Install node and bower packages

docker-compose -f docker-compose.yml -f docker/composefiles/dev.yml run web npm install
docker-compose -f docker-compose.yml -f docker/composefiles/dev.yml run web ./node_modules/.bin/bower install --allow-root

#. (Optional) Enable the admin control panel

echo "ENABLE_ADMIN=True" >> .env

#. Run Kitsune

docker-compose -f docker-compose.yml -f docker/composefiles/dev.yml up web

The running instance will be located at unless you specified otherwise, and the administrative control panel will be at

#. (Optional) Create a superuser

docker-compose -f docker-compose.yml -f docker/composefiles/dev.yml exec web ./ createsuperuser

#. (Optional) Create some data

docker-compose -f docker-compose.yml -f docker/composefiles/dev.yml exec web ./ generatedata

#. (Optional) Update product details

docker-compose -f docker-compose.yml -f docker/composefiles/dev.yml exec web ./ update_product_details