The webapp is deployed here.
The backend runs Uvicorn on top of a Gunicorn server. It exposes a REST API using FASTapi. This wraps a python package that delegates the calculation to a python module written in Cython, which wraps a C++11 library. The latter takes care of 2D computational geometry calculations, and was written from scratch mostly based on existing literature. I devised the algorithm for splitting a set of polygons and disks into parts by a set of parallel lines, and for computing the geometrical properties of the parts.
The testing of the backend is carried out with Pytest on the python side and with Catch on the C++ side. The python part of the application is pip-installable using distutils, and the build system of the C++ part is Scons. The deployment is carried out with multi-stage Docker containers on Heroku.