
Company News
Socket Joins New OpenJS Program to Fund Node.js Security Work
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.
@dxpert/uns-naming-check
Advanced tools
Check a set of Unified Namespace (UNS) topic paths for depth, casing, and collision problems - browser module, CLI, and demo page.
Checks a set of Unified Namespace (UNS) topic paths for the problems that quietly rot a namespace over time. It exists because a UNS is only as useful as its naming discipline, and drift (mixed casing, inconsistent depth, near-duplicate siblings) is hard to spot by eye once a namespace has hundreds of topics.
Line-1 vs line-1 read as one namespace node in most brokers, but are two distinct topics under case-sensitive MQTT)+, #) inside a stored pathOpen demo/index.html directly in a browser (no server or build step needed — it's a plain ES module import). Paste topic paths, one per line, and click "Check namespace".
import { checkNamespace, checkNamespaceText } from '@dxpert/uns-naming-check';
const findings = checkNamespace([
'Acme/Montreal/Stamping/Line-1/Press-01',
'acme/montreal/stamping/line-1/press-02',
]);
// or, from raw multi-line text:
const findings2 = checkNamespaceText('Acme/Montreal/Line-1\nAcme/Montreal/Line-1');
Each finding is { kind: 'fail' | 'warn' | 'pass' | 'info', label, message }. message may contain simple <code>...</code> markup; strip it with the exported plainText() helper for plain-text output.
node bin/cli.js "Acme/Montreal/Line-1/Press-01" "acme/montreal/line-1/press-01"
node bin/cli.js --file paths.txt
cat paths.txt | node bin/cli.js --json
No dependencies to install. Exit code is non-zero if any check finds an error.
$ node bin/cli.js --file paths.txt
[ISSUES] 7 path(s) checked - 2 error(s), 2 warning(s).
[WARN] Duplicate path: Acme/Montreal/Stamping/Line-1/Press-01 appears more than once.
[ERROR] Case-collision: Acme/Montreal/Assembly/Line-4/Robot-Cell-02 vs acme/montreal/assembly/line-4/robot-cell-02. MQTT topics are case-sensitive - these read as one namespace but are two.
[WARN] Line 5 Acme/Toronto/Packaging/Line 2/Palletizer-01: segment Line 2 contains whitespace - prefer - or _.
[WARN] Inconsistent depth: 6 path(s) at 5 levels, 1 path(s) at 3 levels. A UNS aligned to ISA-95 usually keeps one consistent depth (e.g. Enterprise/Site/Area/Line/Unit) with clear rules for shallower nodes.
[SUMMARY] 6 unique path(s) - depth(s): 5, 3 - styles: PascalCase, lower, Title-Case
$ node bin/cli.js "Acme/Montreal/Stamping/Line-1/Press-01" "Acme/Montreal/Stamping/Line-1/Press-02"
[VALID] No issues found. 2 path(s), consistent depth, one naming style.
[SUMMARY] 2 unique path(s) - depth(s): 5 - styles: PascalCase
dxpert.ai (https://dxpert.ai) builds tools and services for Industry 4.0 / digital transformation teams designing and validating industrial data layers. This checker is one of a small set of free, no-signup validators.
A free hosted version of this tool runs at dxpert.ai/tools.html — no install required.
FAQs
Check a set of Unified Namespace (UNS) topic paths for depth, casing, and collision problems - browser module, CLI, and demo page.
The npm package @dxpert/uns-naming-check receives a total of 9 weekly downloads. As such, @dxpert/uns-naming-check popularity was classified as not popular.
We found that @dxpert/uns-naming-check demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Company News
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.

Security News
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.

Research
/Security News
A malicious Firefox extension fetches its payload after installation to evade detection, steal Google session cookies, and automate account takeover.