Skip to content

Building from source

Natsumi edited this page Sep 12, 2025 · 20 revisions

Windows

  • Get source code

    • Download latest source code zip or clone repo with git clone "https://github.com/vrcx-team/VRCX.git"
  • Build Node.js

    • Download and install "Windows Installer (.msi)" for Node.js LTS.
    • Browse to build-scripts\node folder and run these files in this order.
      • Restore node modules (only necessity for first build) restore-node-dependencies.cmd
      • Choose your build type (needs to match up with dotnet) Release/Debug: build-node-release.cmd/build-node-debug.cmd
      • In build-scripts open make-junction.cmd
    • These scripts will set up the Node.js environment and create necessary symbolic links for the build process.
  • Build .NET

Windows Extras

  • Run build outside of IDE

    • .\build\Cef\VRCX.exe
    • Release: Build script changes with npm run prod then reload with Ctrl + R
    • Debug: First run npm run prod to copy needed files then run npm run dev for hot-reload.
  • Overlay debug

    • in Chrome visit chrome://inspect
    • Configure network targets, add localhost:8089
  • Create release zip

    • Run build-scripts\make-zip.cmd for Bandizip or build-scripts\make-zip-7z.cmd for 7-Zip from the root of the project.
  • Create release setup

    • Run build-scripts\build-all.ps1 this will also runs all the steps above for you.

Linux (x64/arm64)

  • Packages needed for running AppImage, will vary depending on distro, if you can already run the AppImage you don't need to install these

    • zlib1g, fuse, fuse2, libfuse2
  • Get source code

    • Download latest source code zip or clone repo with git clone "https://github.com/vrcx-team/VRCX.git"
  • Build .NET

    • Install Dotnet 9.0 SDK
    • Build Dotnet
      • GUI: Open solution file (.sln) with Rider, restore NuGet packages and build project "VRCX-Electron".
      • CLI (x64): dotnet build 'Dotnet/VRCX-Electron.csproj' -p:Configuration=Release -p:WarningLevel=0 -p:Platform=x64 -p:PlatformTarget=x64 -p:RestorePackagesConfig=true -t:"Restore;Clean;Build" -m -a x64
      • CLI (arm64): dotnet build 'Dotnet/VRCX-Electron-arm64.csproj' -p:Configuration=Release -p:WarningLevel=0 -p:Platform=arm64 -p:PlatformTarget=arm64 -p:RestorePackagesConfig=true -t:"Restore;Clean;Build" -m -a arm64
  • Build Node.js

    • Install nodejs and npm
    • Restore node modules, only necessity for first build npm ci
    • Build main app npm run prod-linux or npm run watch-linux for auto build
    • Build electron, only necessity for first build.
      • x64 npm run build-electron
      • arm64 npm run build-electron-arm64
    • Launch app npm run start-electron

macOS (x64/arm64)

  • Install brew
  • brew install --cask dotnet-sdk
  • brew install node git
  • git clone "https://github.com/vrcx-team/VRCX.git"
  • cd VRCX
  • npm ci
  • npm run prod-linux
  • arm64
    • dotnet build 'Dotnet/VRCX-Electron-arm64.csproj' -p:Configuration=Release -p:WarningLevel=0 -p:Platform=arm64 -p:PlatformTarget=arm64 -p:RestorePackagesConfig=true -t:"Restore;Clean;Build" -m -a arm64
    • npm run build-electron
  • x64
    • dotnet build 'Dotnet/VRCX-Electron.csproj' -p:Configuration=Release -p:WarningLevel=0 -p:Platform=x64 -p:PlatformTarget=x64 -p:RestorePackagesConfig=true -t:"Restore;Clean;Build" -m -a x64
    • npm run build-electron-arm64
  • npm run start-electron or open ./VRCX/build folder for .app and .dmg files
  • Optionally sign the app bundle codesign --sign - --deep build/mac/VRCX.app/
Clone this wiki locally