# Muxit > Muxit is a hardware orchestration platform for lab tinkerers. It controls instruments, robots and sensors through connectors (one sandboxed JavaScript file per device), automation scripts and live dashboards. Writing Muxit code — a connector, a script or a driver? Read the "For AI Assistants" pages first: they are self-contained, state the rules the runtime enforces, and end with a checklist. [llms-full.txt](/llms-full.txt) holds all of them in one file. Every link below is the raw markdown of a page; the HTML page is the same path without `.md`. ## For AI Assistants - [Overview](/for-ai/index.md): Self-contained references that let an AI assistant outside Muxit — ChatGPT, Claude, Copilot, Cursor — write working connectors, scripts and drivers. - [Writing Connectors](/for-ai/connectors.md): Everything an AI assistant needs to write a working Muxit connector file — file shape, the Scpi, LineText and BinaryStream protocols, drivers, custom properties and methods, safety, and the mistakes to avoid. - [Writing Scripts](/for-ai/scripts.md): Everything an AI assistant needs to write a working Muxit automation script — the synchronous sandbox, device access, timing, files, operator prompts, safety, patterns and the mistakes to avoid. - [Writing Drivers](/for-ai/drivers.md): Everything an AI assistant needs to write a working Muxit driver in JavaScript, Python or C# — the shared contract, each language's file shape, installing it, packaging it, and the mistakes to avoid. ## Getting Started - [System Requirements](/getting-started/system-requirements.md): What you need to run Muxit — supported platforms, hardware, and network requirements. - [Introduction](/getting-started/index.md): Get up and running with Muxit — what it is, what's included, and your first steps. - [Installation](/getting-started/installation.md): Install Muxit on Windows, macOS, or Linux — one command, no prerequisites. - [UI Tour](/getting-started/ui-tour.md): A visual tour of the Muxit web interface — panels, sidebars, editors, and where to find everything. ## Guides - [Connectors](/guides/connectors.md): Writing connector configs — the bridge between hardware drivers and the rest of Muxit. - [Python Connectors](/guides/python-connectors.md): Wrap a Python script as a Muxit connector — vendor SDKs, ML models, anything from the Python ecosystem. - [Protocol Authoring](/guides/protocol-authoring.md) - [Scripts](/guides/scripts.md): Sandboxed JavaScript automation scripts — available globals, lifecycle, and examples. - [Dashboards](/guides/dashboards.md): Building real-time dashboards with drag-and-drop widgets bound to device properties. - [Operator Mode](/guides/operator-mode.md) - [Accounts](/guides/accounts.md): Admin, engineer and operator sign-in with PINs — who did what, and who may do what. - [Workspaces](/guides/workspaces.md) - [MQTT & IoT](/guides/mqtt-iot.md): Connect IoT devices to Muxit via MQTT — ESP32, Arduino, Home Assistant, Node-RED, and Tasmota. - [Notifications & Alerts](/guides/notifications.md): Send messages to users when scripts finish, when sensors breach thresholds, or when something needs attention — via e-mail, ntfy, Discord, Slack, or a generic webhook. - [Label Printing](/guides/label-printing.md): Print labels on a production line with Muxit — set up Brother P-touch, Epson TM-C3500 or any installed printer, design templates, trigger prints from scanners or MES systems, and monitor the printer. - [AI & Voice](/guides/ai.md): Control lab hardware using natural language — chat, voice, MCP, and autonomous agents. - [AI: SCPI Authoring](/guides/ai-scpi-authoring.md) - [Remote Access](/guides/remote-access.md): Access Muxit from other computers on your network — or anywhere via VPN. - [Keyboard Shortcuts](/guides/keyboard-shortcuts.md): Editor and layout keyboard shortcuts for the Muxit web UI. - [JavaScript Library](/guides/js-library.md): Connect your own JavaScript applications to Muxit via WebSocket. - [Driver Marketplace](/guides/driver-marketplace.md) - [Troubleshooting](/guides/troubleshooting.md): Common issues and solutions for Muxit — server, devices, scripts, dashboards, and AI. ## Reference - [Script API](/reference/script-api.md): Quick reference for all globals available in Muxit scripts. - [Concepts](/reference/concepts.md): What the three catalog kinds mean and which one to pick when adding a device to Muxit. - [Subscription & Plans](/reference/subscription-plans.md) - [AI Tools](/reference/ai-tools.md): Reference for the AI tools that help you add new devices — port discovery, stimulus probing, binary frame analysis, and connector composition. - [Overview](/reference/drivers/index.md): Reference for all built-in drivers that ship with Muxit — TestDevice, Webcam, ONVIF, FileAccess, Virtual, and MqttBridge. - [Transport](/reference/drivers/transport.md): Reference for the `connection:` block — selects which Transport (serial, tcp, usbtmc) a Protocol or Driver uses, and how to reach the device. - [Scpi (Protocol)](/reference/drivers/scpi.md): Reference for the built-in Scpi protocol — query/send any SCPI-compliant instrument over USBTMC, Serial, or TCP/IP, with framing, pacing, and the declarative `schema` block. - [LineText (Protocol)](/reference/drivers/linetext.md): Reference for the built-in LineText protocol — parse text-line streams (Arduino sketches, hobby PSUs, custom embedded devices) into typed properties. - [BinaryStream (Protocol)](/reference/drivers/binary-stream.md): Reference for the built-in BinaryStream protocol — parse fixed-format binary frames (Modbus-RTU, custom embedded, datalogger output) into typed fields. - [TestDevice](/reference/drivers/test-device.md): Reference for the TestDevice built-in driver — a simulated instrument for learning and testing. - [Webcam](/reference/drivers/webcam.md): Reference for the Webcam built-in driver — USB webcam/video capture using OpenCV. - [ONVIF Camera](/reference/drivers/onvif.md): Reference for the ONVIF built-in driver — IP camera streaming, snapshots, and PTZ control. - [FileAccess](/reference/drivers/file-access.md): Reference for the FileAccess built-in driver — sandboxed file I/O for scripts and AI. - [Virtual](/reference/drivers/virtual.md): Reference for the Virtual built-in driver — an in-memory connector with no hardware, for sharing values between scripts and dashboards. - [MqttBridge](/reference/drivers/mqtt-bridge.md): Reference for the MqttBridge built-in driver — MQTT broker bridge for IoT devices. - [EmailNotifier](/reference/drivers/email-notifier.md): Reference for the EmailNotifier built-in driver — outbound SMTP e-mail with plain text, HTML, and attachments. - [WebhookNotifier](/reference/drivers/webhook-notifier.md): Reference for the WebhookNotifier built-in driver — POSTs notifications to ntfy.sh, Discord, Slack, or any HTTP endpoint. - [LabelPrinter](/reference/drivers/label-printer.md): Reference for the LabelPrinter built-in driver — renders JSON label templates with text, barcodes, and images, and prints them through any installed printer. - [AudioSynth](/reference/drivers/audio-synth.md): Reference for the AudioSynth extension driver — a software synthesizer with ADSR envelopes and additive harmonics that plays tones, notes, and melodies. Streams audio to every connected dashboard by default; can also play locally on the host via NAudio. - [Midi](/reference/drivers/midi.md): Reference for the Midi extension driver — live MIDI I/O, SMF playback and recording, internal clock, panic, learn, and channel filtering. - [Digilent Analog Discovery](/reference/drivers/digilent-analog-discovery.md): Reference for the Digilent Analog Discovery 2 / 3 driver — oscilloscope, AWG, programmable supplies, and digital I/O over USB. - [Saleae Logic](/reference/drivers/saleae-logic.md): Reference for the Saleae Logic driver — timed, manual and triggered captures, protocol analyzers, and CSV/binary/.sal exports through the Logic 2 automation API. - [Lunatone DALI-2 USB](/reference/drivers/lunatone-luba.md): Reference for the LunatoneLuba driver — a DALI-2 bus master through a Lunatone DALI-2 USB interface. Levels, unit status and failures, settings read/write with verification, D4i memory banks and addressing. - [Label Templates](/reference/label-templates.md): Schema reference for workspace/labels/*.label.json — page size, elements (text, barcode, image, rect, line), placeholders and formatters used by the LabelPrinter driver. - [Configuration](/reference/configuration.md): Complete reference for Muxit's server.json configuration file. - [WebSocket API](/reference/websocket-api.md): Complete WebSocket protocol specification for MuxitServer. - [HTTP API](/reference/http-api.md): Every HTTP route MuxitServer exposes, with the auth rule for each. - [Driver SDK](/reference/driver-sdk.md): Build device drivers for Muxit — JavaScript modules or C# class libraries. - [JS Driver SDK](/reference/driver-sdk-js.md): Build JavaScript device drivers for Muxit — sandboxed V8 modules with transport APIs. - [Python Driver SDK](/reference/driver-sdk-python.md): Build Python device drivers for Muxit — subprocess-isolated, JSON-RPC bridge. - [C# Driver SDK](/reference/driver-sdk-csharp.md): Build C# device drivers for Muxit — .NET class libraries implementing IConnectorDriver. - [Driver Manifest](/reference/driver-manifest.md): Canonical manifest.json schema shared by JS and C# drivers. - [Driver Tags](/reference/driver-tags.md): Controlled tag vocabulary for driver manifests. - [Driver Validation](/reference/driver-validation.md): Rules enforced by the driver validator — CLI and server. - [Glossary](/reference/glossary.md): Definitions of Muxit-specific terms and concepts. - [Revision History](/reference/revision-history.md) ## Examples - [Your First Script](/examples/first-script.md): Step-by-step walkthrough of writing your first Muxit automation script. - [Your First Connector](/examples/first-connector.md): Step-by-step walkthrough of creating a connector config for a hardware device. - [Your First Dashboard](/examples/first-dashboard.md): Step-by-step walkthrough of building a real-time dashboard with live widgets. ## Optional - [Install on Linux](/guides/install-linux.md): Three ways to install Muxit on Ubuntu / Debian and what apt-packages it needs. - [Safety](/guides/safety.md) - [Avantes Spectrometer Driver](/reference/drivers/avantes.md): Reference for the Avantes spectrometer driver — USB/Ethernet AvaSpec control with full colorimetry, horticulture photon-flux bins, CRI (Ra + R1-R14), peak and dominant wavelength, and auto integration time. - [Vision Driver](/reference/drivers/vision.md): Reference for the Vision built-in driver — real-time computer vision with OpenCV for object detection and tracking.