Django-prov is no longer being actively developed. The repository archives the status of version 2.0.2, which was actively developed in GitLab. For more information, please contact carina.haupt@dlr.de.
Django-prov is a Django app to capture Provenance related data in your Django project. It complies to the W3C PROV Data Model.
django-prov is tested on Python 3.12 and depends on the libraries Django (BSD-3-Clause License) and prov (MIT License)
You can install it with the following command:
git clone https://github.com/DLR-SC/django-prov.git
cd django-prov/
pip install -e .Important
If you want to generate graphical output like SVG or PNG files, you also need to have graphviz installed:
apt install -y graphviz graphviz-devSee also
- Development Installation: Development installation
Django-prov is thought to be wrapped around your own Django project:
You need to follow three steps to start recording provenance in your app:
- Provide a configuration, e.g. via your settings.py.
- Define namespaces, output path and formats.
- Define the models that you want to track, either as entities or agents. The ProvenanceGenerator will then use `Djangos built-in signals`_ to record changes of your models objects in the database.
- Define activities that you want to track.
- Functions, classes or Djangos class-based views are supported.
- Instantiate a ProvenanceGenerator object in your apps.py to start the tracking.
See also
- Configuration options: Configuration options
The documentation of Django Provenance is available here: Official Documentation
Please see the CHANGELOG file for notable changes.
- Benjamin Bauer <Benjamin.Bauer@dlr.de>
- Michael Meinel <michael.meinel@dlr.de>
The project is no longer actively maintained. For more information, please contact carina.haupt@dlr.de.
This project is MIT licensed. Copyright © 2026 German Aerospace Center (DLR) and individual contributors.