Skip to content

festim-dev/festim-gui

Repository files navigation

festim-gui

GUI for FESTIM

License

This library is OpenSource and follow the MIT License

Installation

Install the application/library

pip install festim-gui

Run the application

festim-gui

Simulation runs

The 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.

Development setup

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-msg

For running tests and checks, you can run nox.

# run all
nox

# lint
nox -s lint

# tests
nox -s tests

Docker

Build 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-gui

Then 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-gui

Docker setup files are located under setup/.

Professional Support

  • 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.

About

Repo for the FESTIM gui developed with Trame

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors