Skip to content

Getting Started

giveen edited this page Sep 12, 2026 · 1 revision

Getting Started

Prerequisites

  • A built NInfer engine (ninfer-serve) and (for GPU stats) an NVIDIA driver + nvidia-smi. Point Studio at it via Settings (ninferPath, modelsDir).

  • Rust toolchain (stable) and Node ≥ 22 + pnpm (only needed to build the web bundle).

  • Tauri 2 system dependencies on Linux (Debian/Ubuntu):

    sudo apt-get install -y \
      libwebkit2gtk-4.1-dev libgtk-3-dev libjavascriptcoregtk-4.1-dev \
      libsoup-3.0-dev librsvg2-dev libayatana-appindicator3-dev

    On some rolling/derivative distros the WebKit/GLib runtime and -dev packages can drift out of sync (a -dev package wanting an older runtime). If apt refuses with a version-skew error, allow the runtime downgrades: sudo apt-get install -y --allow-downgrades libwebkit2gtk-4.1-dev ….

  • Optional: the hf CLI for in-app model downloads, and rg (ripgrep) for the Coder repo-map.

Build & Run

git clone https://github.com/giveen/ninfer-studio.git && cd ninfer-studio
pnpm install && pnpm build          # build the web bundle → apps/web/dist

Desktop app (debug):

pnpm desktop:run                   # native WebKitGTK window (debug) on :8787

Desktop app (release binary):

pnpm desktop:build                 # cargo build --release (no tray feature)
# or with the tray icon:
pnpm desktop:build:tray            # adds --features tray (needs libayatana-appindicator3-dev)
desktop/target/release/ninfier-studio

Bundled installer / portable image:

pnpm desktop:bundle                # pnpm tauri build --features tray --bundles deb appimage

Produces .deb + .AppImage in desktop/target/release/bundle/.

Development modes

pnpm dev            # Rust control plane :8787 + Vite :5173 (HMR browser UI)
pnpm control:start  # headless: Rust control plane only, no window
pnpm desktop:run    # native window + Rust control plane (dist from apps/web/dist)

NINFIER_STUDIO_DATA overrides the per-user config dir (default ~/.config/ninfier-studio on Linux, AppData/Roaming/ninfier-studio on Windows) and NINFIER_STUDIO_DIST (default apps/web/dist) overrides the dist location.

start-stack.sh (dev) boots the control plane and optionally seeds config + starts the engine, taking all paths from the environment — NINFER_DIR, MODELS_DIR, CODER_WORKSPACE, ARTIFACT, ENGINE_PORT; settings persist in config.json after the first run.

See Configuration for the full settings reference and Packaging and Releases for how CI builds and publishes releases.

Clone this wiki locally