Skip to content

Installation

Get Muxit running on your machine in under 5 minutes.

System Requirements

RequirementVersionCheck
.NET SDK9.0 or laterdotnet --version
Node.js18 or laternode --version
GitAny recent versiongit --version

Supported platforms: Windows 10+, macOS 12+, Linux (x64). Raspberry Pi (ARM64) works with limitations.

Step 1: Download

Clone the repository:

bash
git clone https://github.com/MUXIT-IO/muxit.git
cd muxit

Step 2: Build

Build everything — the web UI, documentation site, extension drivers, and server:

bash
node build.js

This runs four build steps:

  1. UI — Vite builds the React SPA into MuxitServer/wwwroot/
  2. Docs — VitePress builds the documentation site into MuxitServer/wwwroot/docs/
  3. Drivers — Extension drivers are compiled into workspace/drivers/
  4. Server — The .NET server is compiled

You can also build individual components:

bash
node build.js ui        # Web UI only
node build.js docs      # Documentation site only
node build.js drivers   # Extension drivers only
node build.js server    # UI + docs + server binary

Step 3: Start the Server

bash
node start.js server --gui

This starts the Muxit server and opens your default browser to http://127.0.0.1:8765.

On first run, you'll see the Workspace Setup screen. Create a new workspace or open an existing one to get started. See Workspaces for details.

Other start modes:

bash
node start.js server            # Start without opening browser
node start.js server --no-tray  # Start without system tray icon
node start.js server --port=9000  # Use a custom port
node start.js cli               # CLI mode for driver testing
node start.js mcp               # MCP server for Claude Code/Desktop

Step 4: Verify It Works

Once the server is running and the browser opens:

  1. Check the Hardware panel — Click the plug icon in the left Activity Bar. You should see test-device listed with live properties (temperature, label, count, etc.)
  2. Open a demo dashboard — In the Explorer sidebar, expand dashboards/ and click demo.dashboard.json. You should see live gauges and widgets
  3. Run a script — In the Explorer sidebar, expand scripts/ and click hello.js. Click the Run button in the editor toolbar. Check the Output panel at the bottom for log messages

If you see the test device with updating values, Muxit is working correctly.


What's Included Out of the Box

Muxit ships with a complete demo environment — no hardware needed:

CategoryWhat's Included
Built-in driversTestDevice, Webcam, ONVIF (IP camera), FileAccess, MqttBridge
Example connectorstest-device, webcam, gui, store, and more in workspace/connectors/
Example scriptshello.js, demo.js, count_to_ten.js, stream-demo.js, and more in workspace/scripts/
Example dashboardsdemo, test-device, robot, gcode, and more in workspace/dashboards/
Example agentstemperature-monitor, pick-and-place in workspace/agents/

The TestDevice is a simulated device that exercises every data type (strings, numbers, booleans, arrays, objects). It's always available and doesn't count against your connector limit — making it the perfect learning tool.


Platform Notes

Windows

macOS

bash
# Using Homebrew
brew install dotnet-sdk node git
  • Serial ports appear as /dev/tty.usbserial-* or /dev/tty.usbmodem-*

Linux

bash
# Ubuntu/Debian
sudo apt update
sudo apt install -y dotnet-sdk-9.0 nodejs npm git
  • Serial ports appear as /dev/ttyUSB0, /dev/ttyACM0, etc.
  • You may need to add your user to the dialout group for serial port access:
bash
sudo usermod -aG dialout $USER
# Log out and back in for the change to take effect

Raspberry Pi

Muxit runs on Raspberry Pi (ARM64) for a dedicated lab server:

  • Works: Core server, serial ports, remote access, all automation scripts
  • Limited: JavaScript sandbox (ClearScript V8) — ARM64 support is uncertain
  • Not available: Webcam and ONVIF drivers (no OpenCV ARM64 binaries)

Run headless: node start.js server --no-tray


Updating

Pull the latest changes and rebuild:

bash
git pull
node build.js

Your workspace files (connectors, scripts, dashboards, agents, config) are preserved during updates — they live in the workspace/ directory, which is not overwritten by builds.


Troubleshooting Installation

dotnet: command not found — Install the .NET 9.0 SDK from dotnet.microsoft.com/download.

node: command not found — Install Node.js 18+ from nodejs.org.

Port 8765 already in use — Another instance of Muxit (or another program) is using the port. Stop the other process or use --port=9000 to pick a different port.

Build fails with errors — Make sure you have .NET 9.0 (not 8.0 or earlier). Run dotnet --version to check.

Browser shows blank page — Run node build.js ui to ensure the web UI is built. The UI must be compiled before the server can serve it.

For more help, see the Troubleshooting Guide.

Muxit — Hardware Orchestration Platform