Development Setup

March 22, 2026 ยท View on GitHub

Prerequisites

ToolVersionNotes
Node.js20+LTS recommended
RuststableInstall via rustup
Tauri v2 CLI2.xcargo install tauri-cli
FFmpeg binaryanyPlace in resources/

Clone and Install

git clone https://github.com/Jnx03/Flowtake.git
cd Flowtake
npm install

Run in Development

npm run dev

This starts both the Vite dev server (port 5173) and the Tauri native window with hot reload.

Available Scripts

CommandDescription
npm run devStart Tauri dev server with hot reload
npm run dev:frontendStart Vite frontend only (port 5173)
npm run buildBuild production installer (NSIS/MSI/DMG)
npm run build:frontendBuild frontend assets only
npm run lintRun ESLint on the codebase

Path Aliases

Vite is configured with the @shared alias:

// vite.config.mjs
'@shared': path.resolve(__dirname, 'app/shared')

Use @shared/ imports throughout the frontend instead of relative paths.

Multi-Window Dev Notes

Each window has its own HTML entry point. The main window uses index.html at the project root. Other windows live at app/windows/<name>/index.html.

When developing a specific window in isolation, you can open its HTML file directly in the Vite dev server by navigating to its path.

FFmpeg Sidecar

FFmpeg must be placed in resources/ before building. The Tauri shell plugin is configured to allow the sidecar binary. In dev mode, FFmpeg is resolved relative to the project root.

Platform-Specific Notes

Windows: Requires Visual Studio Build Tools (C++ workload) for compiling native Rust dependencies.

macOS: Requires Xcode Command Line Tools (xcode-select --install).