Getting started

Setting up your environment

EVA requires Python 3.12 or newer. If you do not have a preferred text editor/IDE I recommend using PyCharm or VSCode as they both have many integrated tools that make the development process much easier and faster.

Once you have the correct version of Python installed, you’ll want to make sure you have a C++ compiler installed. If developing on Windows, you can follow this guide to install it. If developing on Linux, you just need to install gcc (if not already installed), and if you’re working on MacOs you can install Xcode.

Next, you’ll want to set up a virtual environment. Tip: some IDEs can do this for you. Once you’ve done that you can install all requirements using pip:

pip install -r "requirements.txt"

Lastly, EVA needs to be installed before it can run. For developing purposes, you can install an editable build using

pip install . -e

which will update the installed EVA package every time you edit the code, meaning you only have to run this once when setting up the environment and forget about it.

Pyinstaller setup

EVA uses pyinstaller to freeze the python project into an executable which contains all requirements and dependencies needed to run. (This is why the c++ compiler is needed). The EVA.spec file specifies all the settings and parameters we want for the executable. Pyinstaller has two different modes it can use when creating the executable, either a single executable (one-file mode) or a folder containing the executable and some dependencies (one-folder mode). This project uses the one-folder mode, as it is easier to debug.

To build the executable, you just need to run

pyinstaller EVA.spec

which will generate the executable under dist/main/EVA.exe.