This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
This is a vmix-utility project that provides a desktop application for managing vMix connections and operations. The project consists of two main frontend implementations:
- Tauri Frontend (app/) - Modern React-based desktop app using Tauri for native functionality
- Legacy Web Frontend (web/) - Vue.js web application served by Go backend
- Go Backend Server - HTTP API server that interfaces with vMix instances
- Frontend: React + TypeScript + Material-UI + Vite
- Backend: Rust using Tauri framework with vmix-rs integration
- Location:
app/directory - Build Tool: Uses
bunas package manager, Tauri CLI for builds
- Rust Backend: Tauri backend provides native desktop integration and vMix API calls
- vMix Integration: Uses vmix-rs (Rust) library
cd app/
bun install # Install dependencies
bun run tauri dev # Start Tauri development mode
bun run tauri build # Build Tauri applicationApp.tsx- Root component with Material-UI themecomponents/Layout.tsx- Main navigation layout with drawerpages/- Individual page components (Connections, Settings, etc.)- Navigation uses Material-UI components with responsive drawer
main.rs- Entry pointlib.rs- Core Tauri commands and vMix integration- Key commands:
connect_vmix,disconnect_vmix,get_vmix_status - Uses
vmix_rscrate for vMix API communication
@tauri-apps/api- Tauri JavaScript API@mui/material- Material-UI componentsvmix_rs- Rust vMix integration (custom branch)
- Tauri configuration includes security settings and window dimensions (1280x720)