Das Online-Tool "Law in Progress" macht Gesetzentwürfe und deren Konsequenzen für bestehende Gesetze durch automatische Erstellung einer Synopse sichtbar und nachvollziehbar.
Aktuell werden nur Entwürfe von Bundesgesetzen unterstützt. Später sollen auch Entwürfe von Landesgesetzen genutzt werden können.
View Demo
·
Report Bug
·
Website
·
Request Feature
- Clone the main branch of this repository
- Run
make poetry
andmake install
to setup poetry and the relevant requriements - Verify the installation by running the testsuite with
make test
.
Run make app
to start the webapp at localhost:8000
.
An online version of the webapp is available at http://app.lawinprogress.de.
To generate an updated version of the affected source_laws given a change law pdf, run
poetry run python ./scripts/generate_updated_version.py -c data/2000275.pdf
This will generate a before and after version of the changed laws in ./output
.
You can also use the software to parse change laws to structured json files representing the changes to be made.
poetry run python ./scripts/parse_change_law_pdf.py -y data/2000275.pdf
Alternatively, you can have a look in the script on how to invoke the required functions yourself from python.
├── pyproject.toml --> Config for the project
├── README.md --> This file
├── LICENSE --> MIT license
├── Makefile --> Make target for setup, testing and cleaning
├── logging.conf --> Configuration for the loggers used in this project
├── data/ --> Folder with some raw files of laws in text and pdf
├── scripts/ --> Folder with scripts to process laws and update the app
├── doc/ --> Documentation and notes
├── notebooks/ --> Experimental notebooks
├── lawinprogress/ --> Main package
│ ├── __init__.py
│ ├── app/ --> contains the FastAPI webapp.
│ ├── templates/ --> contains html templates that power the webapp
│ ├── apply_changes/ --> modules to apply the proposed changes to source laws
│ ├── processing/ --> modules to process change law pdfs and extract required text
│ ├── parsing/ --> modules to parse source and change laws
│ └── libdiff/ --> modules to generate a html diff of the changed law
└── tests/ --> Test for the package
├── ...
└── __init__.py
- To run the code quality checks (with isort, black and pylint) by running
make check
. - To run the tests, run
make test
.