m-uising-box panel

m-ui compared with other panels

If you are choosing between sing-box and Xray panels, this page lists what each project states about itself. Facts below were checked against each project's README on 2026-09-05; anything a README does not state is marked Unknown rather than guessed.

The short version

Most panels are config-driven: you edit inbounds, outbounds and routing rules that map one-to-one onto the core's JSON, and the panel restarts or reloads an external core process. m-ui is line-driven: one record — protocol + port → exit — is rendered into the sing-box config for every server it is deployed on, the core runs inside the panel process, and changes are applied by the smallest reload that covers them. That is the whole difference in philosophy; the table shows how it plays out in features.

Feature table

m-ui3x-uis-uiMarzbanHiddify-Manager
Coresing-boxXray-coresing-boxXray-coreXray and sing-box
Core runsEmbedded in the panel binaryExternal process managed by the panelUnknownExternal process (Xray installed separately)Unknown
Config modelLines (protocol + port → exit)Inbounds / outbounds / routingInbounds / outbounds / routingInbounds (Xray config), per-user protocol selectionUnknown
Change applied without dropping other usersYes: user and upstream changes hot-swap; only line changes restartUnknownUnknownUnknownUnknown
Config validated before save, rollback on failed startYes (sing-box dry run + rollback)UnknownUnknownUnknownUnknown
Multi-server from one panelMaster / node: push every 5 s, central quota and device limitsYes: manage multiple servers, clone inbounds onto other nodesUnknownYes: Marzban-nodeUnknown
Subscription formatsUniversal links, Clash / Mihomo, sing-box JSON; landing pageRaw, JSON, Clash; custom page templatesLink, JSON, Clash; external linksV2ray-style, Clash, ClashMetaDedicated clients + subscriptions
Traffic quota / expiryYes / yes, periodic resetYes / yes, renewal cyclesYes / yesYes / yes, periodic limitsYes / yes
Device limitBy source IP, counted across all serversIP limit and HWID limitUnknownUnknownUnknown
Per-user speed limitYes (up / down)UnknownUnknownUnknownUnknown
Resellers with own panelYesUnknownUnknownUnknownUnknown
DeploymentOne static binary + SQLiteBinary + Xray, or DockerBinary, or DockerPython app + Xray, DockerInstaller script, Docker
LicenseGPL-3.0GPL-3.0GPL-3.0AGPL-3.0GPL-3.0

When m-ui is not the right pick

When it is

Migrating

m-ui imports a compatible legacy panel database and keeps ports, credentials and subscription paths, so existing clients keep working after a switch. It does not claim compatibility with every panel above — check the importer report on a copy of your database first. See Getting started.

Sources

Checked 2026-09-05. Corrections welcome in Discussions — the goal is accuracy, not winning a table.