PatchFerret
Console show file in, patch paperwork out

What it does
A show file goes in, a model that doesn't care which console it came from comes out, and from that model come the three documents a patch needs: who's plugged into what, what the rig is, and how it's wired. It reads Behringer X32/M32, Yamaha DM3/DM7/TF and CL/QL, and Allen & Heath Avantis/dLive and SQ today; DiGiCo and Avid VENUE are planned.
The browser build parses and renders entirely in WebAssembly, so a show file never leaves your machine. There's no upload and no server, which matters, because show files are client data.
The hard part is that every console has a layer of indirection in the middle of the patch chain. On an X32 a connector feeds a routing block, then an input slot, then a channel's source, so assuming channel N is fed by connector N gets you a patch list that's confident and wrong. The model keeps the slot, the socket and the strip on every patch instead of squashing them together.
- Patch list, specification sheet and wiring topology as PDFs
- Console-neutral PFX model, plus PFX interchange XML
- Behringer X32 / Midas M32 / X-Air .scn — supported
- Yamaha DM3 / DM7 / TF and CL / QL — input patch and names
- Allen & Heath Avantis / dLive and SQ — input patch and strip inventory
- Browser build runs in WebAssembly: nothing is uploaded
- Self-hostable as a container image, with a compose file and an Unraid template
Where it stands
An early preview, and still very much in development. The X32 adapter is written against a real 2,104-line scene file saved by an actual console, and checked against it in CI. Nothing it outputs has ever been loaded back into a console, there's no conversion between consoles yet, and the Yamaha MMS patch-source encoding has never been confirmed against a console's patch screen. On TF no connector resolves at all, and the tool says so instead of guessing. Check anything it prints against the desk before you trust it on a show.