This is a monorepo containing code for the EpiRust framework -
- engine - The main EpiRust engine, which can be run as a CLI app
- server - The API server that talks to the engine and serves the frontend
- web - The Web UI for EpiRust
The quickest way to run the application is using the CLI interface on the engine.
Prerequisites:
- Install Rust and Cargo (version 1.40.0 or above). Refer to https://rustup.rs/ for rust installation
- Install
cmake
(version 3.16.4 or later). Installation instructions will depend on your platform. On MacOS you can install it usingbrew install cmake
. Refer to https://cmake.org/download/ - Python 3 (for visualization and charting). We also need the
pandas
andplotly
libraries which can be installed usingpip
orconda
.pip install pandas plotly
Running:
- Go to the
engine
directory:cd engine/
- Run
cargo run --release
- To modify the settings, or run with custom settings, use
cargo run --release -- -c config/[your-config].json
. Refer todefault.json
for the available settings.
Visualization:
- After the simulation is run, it will generate a CSV file. We can plot this using a simple script included in the
engine/plot
directory- Ensure you're in the
engine
directory - Run
python plot/plot.py
- this will plot all the CSVs in the current directory.
- Ensure you're in the
EpiRust is an open source project licensed under AGPL v3