GUI for FESTIM
This library is OpenSource and follow the MIT License
Install the application/library
pip install festim-guiRun the application
festim-guiThe Run page can execute the generated FESTIM script in the current Python environment.
When running inside the provided Docker image, festim is installed as part
of the image build.
When running festim-gui outside the Docker container, the same assumption
still applies: the Python environment used to launch festim-gui must also
have festim installed, since the Run page executes the generated script in
that same environment.
Simulation working directories are created under FESTIM_GUI_TMP when that
environment variable is set. If it is not set, the application falls back to
/tmp.
Each run gets its own temporary directory containing the generated script, a
run.log file, and any simulation outputs written by the script.
We recommend using uv for setting up and managing a virtual environment for your development.
# Create venv and install all dependencies
uv sync --all-extras --dev
# Activate environment
source .venv/bin/activate
# Install commit analysis
pre-commit install
pre-commit install --hook-type commit-msgFor running tests and checks, you can run nox.
# run all
nox
# lint
nox -s lint
# tests
nox -s testsBuild the Docker image from the repository root:
docker build -t festim-gui .Run the image and expose it on port 8080:
docker run -it --rm -p 8080:80 festim-guiThen open http://localhost:8080/ in your browser.
The Docker image includes festim, so Run page executions work inside the
container without any extra local FESTIM installation.
To persist simulation run directories outside the container, set
FESTIM_GUI_TMP and bind-mount it:
mkdir -p ./festim-runs
docker run -it --rm \
-p 8080:80 \
-e FESTIM_GUI_TMP=/data/festim-runs \
-v $(pwd)/festim-runs:/data/festim-runs \
festim-guiDocker setup files are located under setup/.
- Training: Learn how to confidently use trame from the expert developers at Kitware.
- Support: Our experts can assist your team as you build your web application and establish in-house expertise.
- Custom Development: Leverage Kitware’s 25+ years of experience to quickly build your web application.