Prerequisites

To build from source you need:

Requirement Version Notes
Node.js 22+ Frontend build
Bun Latest Alternative to npm
Rust Stable (2024) Tauri backend
Python 3.9+ Runtime for training
⚠️ Debian / Ubuntu

Install Tauri system deps first:

sudo apt-get update && sudo apt-get install -y \
  libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev \
  patchelf libgtk-3-dev libsoup-3.0-dev libjavascriptcoregtk-4.1-dev

Installation

Option A: Download a Pre-built Release

Platform Architecture Formats
macOS ARM64 / x64 .dmg
Windows x64 .exe
Linux x64 .deb · .AppImage

👉 Download Latest Release →

Option B: Install via Homebrew (macOS)

brew tap theja-vanka/nightflow https://github.com/theja-vanka/NightFlow.git
brew install --cask nightflow

To update to the latest version:

brew upgrade --cask nightflow

Option C: Build from Source

Clone the Repository

git clone https://github.com/theja-vanka/NightFlow.git && cd NightFlow

Install Dependencies

npm install --legacy-peer-deps
bun install

Launch Dev Mode

npx tauri dev
bunx tauri dev
💡 First Run

First launch may take a few minutes while Rust compiles. Subsequent launches are fast.

Your First Project

Create a New Project

Click "New Project" on the dashboard.

Configure Your Dataset

Point to your image directory. NightFlow auto-detects folder structure and class labels (ImageFolder format).

Choose a Model

Pick a backbone — try resnet18 for quick tests or convnext_tiny for higher accuracy.

Configure & Train

Set hyperparameters or enable auto-tuning. Click "Start Training" and watch metrics stream live.

Analyze Results

Explore metric charts, confusion matrices, per-class breakdown, and GradCAM interpretation.

Export & Deploy Your Model

Export to TorchScript, ONNX, or TensorRT for production deployment, or push directly to Hugging Face Hub. NightFlow also generates a ready-to-use Python inference script with auto-populated class names.

Development Commands

Action npm Bun
Frontend dev server npm run dev bun run dev
Build frontend npm run build bun run build
Launch full app npx tauri dev bunx tauri dev
Build distributables npx tauri build bunx tauri build
Lint npm run lint bun run lint

Next Steps