English · Français
Sulfur is a modular desktop simulator for industrial and IT protocols. Each module provides a simulated server and a client, to test devices, supervision software and integrations without the real installation, and to reproduce faults on demand. Cross-cutting tools inject faults, chain behaviours in Node-RED style flows and chart any value.
- Windows, Linux and macOS; interface in English and French, light or dark theme.
- Extensible: anyone can write their own module with the module SDK, without approval or signature.
- Built with Electron, React and TailwindCSS v4. License: Apache-2.0.
| Family | Modules |
|---|---|
| Industrial protocols | OPC UA · Modbus (TCP, TLS, RTU, ASCII) · Siemens S7 · PLCSim Advanced |
| IT and network protocols | HTTP / REST · MQTT · SNMP · Syslog · NTP · DNS · DHCP · LDAP / RADIUS · FTP / SFTP · TFTP |
| Tools | Simulator (faults and flows) · Trends · Certificate authority · Network explorer · Serial terminal |
Download the installer for your system from the
latest release: .exe (Windows), .AppImage or
.deb (Linux), .dmg (macOS). The installers are not signed yet: see
Getting started for the first launch.
Requirements: Node.js 24 and npm.
npm install
npm run dev # start in development mode (hot reload)
npm test # automated tests (Vitest)
npm run build # production build in out/Before pushing, run the same checks as the CI:
npm run lint && npm run format:check && npm test && npm run buildAll commands, tests, CI, packaging and releases: Development.
The full documentation is in docs/en/:
- Getting started: installation, first steps, default ports, where data is stored
- Architecture: processes, module host, IPC, data points, SDK, manifests
- Saved configurations: persistence of the settings, import / export
- Managing modules: enabling modules, installing external packages
- Languages and theme: translations, adding a language, themes
- Creating a module: write, build and share your own module
- Distribution: signing the installers and publishing on the stores
See the roadmap for what comes next.
Contributions are welcome: see CONTRIBUTING.md. Each contributor signs the Contributor License Agreement once, on their first pull request.
Sulfur is distributed under the Apache License 2.0 — Copyright © 2026 Maxime MALLET. The modules of this repository are the standard modules; additional modules, distributed as separate packages, are planned, and anyone can build their own module with the SDK (see the roadmap).