This is my final project for Python course in Coders Lab IT School.
The freeGEZ app is used to maintain a municipal register of historical monuments (gminna ewidencja zabytków).
In accordance with Polish law, developing municipal records of historical monuments is the duty of local government:
The head of the commune, mayor or president of the city shall keep the commune inventory of monuments in the form of address cards of immovable monuments located in the commune (Act of 23 July 2003 on the protection and guardianship of monuments).
- basic CRUD operations for entities representing the address cards of immovable monuments
- exporting records to PDF
Before getting started, please make sure you have installed Python 3.5+ and PostgreSQL.
To run the application please follow these steps:
-
Clone this repo to your local machine.
-
Create and activate a virtual environment:
virtualenv -p python3 venv source venv/bin/activate
-
Install dependencies:
pip install -r requirements.txt
-
Create a new PostgreSQL database and add the credentials to ".env" file using this pattern:
DATABASE_URL=psql://<username>:<password>@<host>:<port>/<database>
-
Obtain a secret key from MiniWebTool and also add to ".env" file:
SECRET_KEY=<obtained_secret_key>
-
Apply the migrations, create a superuser, and run the server:
python manage.py migrate python manage.py createsuperuser python manage.py runserver
-
Django-environ – Used to store config in environment variables
-
Django Widget Tweaks – Used to tweak the form field rendering in templates, not in python-level form definitions
-
Font Awesome – An iconic font with CSS toolkit
-
WeasyPrint – A visual rendering engine for HTML and CSS that can export to PDF
-
Zeep – A Python SOAP client
-
TERYT ws1 – A web service that allows access to data from Polish National Official Register of the Territorial Division of the Country (TERYT).
This project is licensed under the GNU GENERAL PUBLIC LICENSE v3.0 - see the LICENSE file for details