Installation Guide
In order to run the application on your system, it is essential to have these prerequisites installed on your computer. Please follow the steps below to set up the dependencies based on your current operating system.
Video Tutorial
A step-by-step video tutorial for the installation procedure is available on our YouTube channel: BNSB Lab - IITH
NodeJS Installation
Step 1: Download Node.js
Go to the official Node.js download page and download the installer for your operating system: https://nodejs.org/
-
Windows

-
MacOS

-
Linux

Step 2: Install Node.js
Run the downloaded installer and follow the on-screen instructions:
- Accept the license agreement
- Choose the installation directory (default is recommended)
- Ensure “Add to PATH” is checked
- Complete the installation
Step 3: Verify Installation
Open a terminal or command prompt and run:
node --version
npm --version
If both commands return version numbers, Node.js and npm have been installed successfully.
Python Installation (Python 3.12)
Step 1: Download Python
Go to the official Python website and download Python 3.12 for your operating system:
https://www.python.org/downloads/
-
Windows Download the Windows installer (64-bit).
-
MacOS Download the macOS universal installer.
-
Linux Use your system package manager or build from source (recommended for Python 3.12).
Step 2: Install Python
Windows
- Run the downloaded
.exefile - Check “Add Python to PATH” (very important)
- Click Install Now
- Complete the installation
MacOS
- Open the downloaded
.pkgfile - Follow the installation wizard
- Python will be installed under
/usr/local/bin/python3
Linux (Ubuntu / Debian example)
sudo apt update
sudo apt install python3.12 python3.12-venv python3.12-dev
If Python 3.12 is not available via apt, install it from source:
sudo apt install build-essential libssl-dev zlib1g-dev \
libncurses5-dev libncursesw5-dev libreadline-dev libsqlite3-dev \
libgdbm-dev libbz2-dev liblzma-dev tk-dev wget
wget https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tgz
tar -xf Python-3.12.0.tgz
cd Python-3.12.0
./configure --enable-optimizations
make -j$(nproc)
sudo make altinstall
Step 3: Verify Installation
Open a terminal or command prompt and run:
python --version
or
python3 --version
You should see output similar to:
Python 3.12.x
Step 4: Verify pip (Python Package Manager)
pip --version
or
pip3 --version
Download and Run NAViFluX
Step 1: Get the Source Code
You can obtain the software in either of the following ways:
- Option 1: Clone the repository
git clone "https://github.com/bnsb-lab-iith/NAViFluX"
- Option 2: Download the repository as a ZIP file and extract it
Step 2: Install Dependencies and Run
Follow the instructions based on your operating system:
- Windows
.\install.ps1
.\run.ps1
- Linux
./install.sh
./run.sh
- MacOS
./install.sh
./run_mac.sh
If the Scripts Don’t Work (Manual Setup)
No worries — you can still run the application manually by following the steps below.
Step 1: Start the Frontend
1. Open a terminal and navigate to the client folder:
cd client
2. Install the required Node.js dependencies:
npm install
3. Start the development server:
npm run dev
Step 2: Start the Backend
1. Open a new terminal window and navigate to the backend directory.
2. Create a Python virtual environment:
python -m venv .venv
3. Activate the virtual environment based on your OS:
- Windows
.venv\Scripts\activate
- MacOS / Linux
source .venv/bin/activate
4. Install Python dependencies:
pip install -r requirements.txt
5. Run the Flask server:
flask run
Performance Benchmarks
The typical runtimes for three analyses implemented in NAViFluX are provided below. NAViFluX was tested on different machines with variable CPU, RAM, and OS configurations.
Two GSMNs of different metabolite–reaction dimensions were used to evaluate the runtime performance:
- iJO1366 — 2583 Reactions, 1805 Metabolites
- RECON1 — 3741 Reactions, 2766 Metabolites
64 GB RAM, Intel i9 Processor, 32-Core CPU (Linux)
| Model | Flux Variability Analysis | Single Rxn Deletion | Flux Sampling |
|---|---|---|---|
| iJO1366 | 3.0196 | 1.7292 | 35.2431 |
| RECON1 | 7.7967 | 3.5099 | 77.6662 |
16 GB RAM, Apple M4, 10-Core CPU (macOS)
| Model | Flux Variability Analysis | Single Rxn Deletion | Flux Sampling |
|---|---|---|---|
| iJO1366 | 20.691 | 11.6096 | 49.5542 |
| RECON1 | 36.216 | 13.5691 | 106.8398 |
16 GB RAM, Intel i7 Processor, 4-Core CPU (Windows)
| Model | Flux Variability Analysis | Single Rxn Deletion | Flux Sampling |
|---|---|---|---|
| iJO1366 | 74.6648 | 40.4138 | 96.3714 |
| RECON1 | 113.658 | 56.7247 | 781.1803 |
Note
All values indicate NAViFluX analysis runtime in CPU seconds.