The flagtrafo
project is a web application with an interactive user interface for playing with different
transformations of flag complexes in the real projective plane. It provides transformations such as the bulge flow, the
shear flow and the eruption flow.
flagtrafo
can be viewed in your web browser. The geometric backend on the server side is the Python package projflag-lib/flagcomplex
.
- Download the
flagtrafo
source files and unpack them. - Open a command prompt of your choice and navigate to the flagtrafo folder. (Optionally activate a virtual environment.)
- Execute
pip install -r requirements.txt
. - Start the application server with
python3 src/app.py
. Open the address shown in the command prompt in your browser, e.g.http://172.18.108.70:80/
.
Hint for developers: You may want to activate the debug mode, which causes the server to update whenever you change the
code. This can be achieved by uncommenting the line # app.config['DEBUG'] = True
in the file src/app.py
or by running
$env:FLASK_ENV = "development"
in your Windows PowerShell, or by running export FLASK_DEBUG
in your Linux shell.
- Install
docker
from www.docker.com. (On Windows: Start the Docker desktop client after the installation.) - Download the
flagtrafo
source files and unpack them. - Open a command prompt of your choice and navigate to the flagtrafo folder.
- Execute
docker build -t flagtrafo-image .
in order to create a Docker image from the container. - Start the application server with
docker run --name flagtrafo-container -d -p 80:80 flagtrafo-image
. Open the addresshttp://localhost/
in your browser in order to see the app.