Directory structure¶
All the source code lives in src/
, which has several subdirectories.
- pretix/
This directory contains nearly all source code that belongs to pretix.
- base/
This is the Django app containing all the models and methods which are essential to all of pretix’s features.
- control/
This is the Django app containing the front end for organizers.
- presale/
This is the Django app containing the front end for users buying tickets.
- api/
This is the Django app containing all views and serializers for pretix’ REST API.
- helpers/
Helpers contain a very few modules providing workarounds for low-level flaws in Django or installed 3rd-party packages.
- locale/
Contains translation file for pretix
- multidomain/
Additional code implementing our customized URL handling.
- static/
Contains all static files (CSS/SASS, JavaScript, images) of pretix’ core We use libsass as a preprocessor for CSS. Our own sass code is built in the same step as Bootstrap and FontAwesome, so their mixins etc. are fully available.
- testutils/
Contains helper methods that are useful to write the test suite for pretix or test suites for pretix plugins.
- tests/
This is the root directory for all test codes. It includes subdirectories
api
,base
,control
,presale
,helpers`, ``multidomain
andplugins
to mirror the structure of the pretix source code as well astestdummy
, which is a pretix plugin used during testing.