
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
ui8px validates utility class maps against an 8 + 4 spacing policy.
Run directly:
npx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json
You can also run with npm or bun:
npm exec ui8px -- --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json
bunx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json
npx ui8px --design grid --input <input-json> --output <backlog-json> [options]
--input <path> — input class map JSON (required)--output <path> — output backlog JSON path (required)--spacing-base <number> — multiplier for var(--spacing); default 4--root-font-size <number> — root font size for rem; default 16--verbose — print each violation in terminal--design grid — required mode flag-h, --help — print usage and exit with 0--verbose)npx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json
Input: ui8kit.map.json
Output: ui8kit.map.backlog.json
Design: grid
Spacing base: 4px
Checked classes: 120
Checked declarations: 340
Violations: 2
Found 2 violations.
Report saved to: /Users/.../ui8kit.map.backlog.json
--verbose)npx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json --verbose
Input: ui8kit.map.json
Output: ui8kit.map.backlog.json
Design: grid
Spacing base: 4px
Checked classes: 120
Checked declarations: 340
Violations: 2
Found 2 violations.
- h-11 | height: calc(var(--spacing) * 11) -> 44px
- ml-7 | margin-left: 7px -> 7px
Report saved to: /Users/.../ui8kit.map.backlog.json
npx ui8px --design grid --input ui8kit.clean.map.json --output ui8kit.clean.backlog.json
Input: ui8kit.clean.map.json
Output: ui8kit.clean.backlog.json
Design: grid
Spacing base: 4px
Checked classes: 56
Checked declarations: 110
Violations: 0
No violations found.
Report saved to: /Users/.../ui8kit.clean.backlog.json
Error: --input is required.
Error: --output is required.
Error: Unknown option: --foo
0 — no violations1 — violations found2 — invalid usage or runtime errorui8px validates utility class maps against an 8 + 4 spacing policy.
No one-off install is required:
npx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json
You can also run with npm or bun:
npm exec ui8px -- --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json
bunx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json
npx ui8px --design grid --input <input-json> --output <backlog-json> [options]
npx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json --verbose
Terminal output:
Input: ui8kit.map.json
Output: ui8kit.map.backlog.json
Design: grid
Spacing base: 4px
Checked classes: 120
Checked declarations: 340
Violations: 2
Found 2 violations.
- h-11 | height: calc(var(--spacing) * 11) -> 44px
- ml-7 | margin-left: 7px -> 7px
Report saved to: /Users/.../ui8kit.map.backlog.json
Example backlog file:
{
"meta": {
"input": "ui8kit.map.json",
"output": "ui8kit.map.backlog.json",
"design": "grid",
"spacingBase": 4,
"rootFontSize": 16,
"generatedAt": "2026-03-11T12:00:00.000Z",
"classesScanned": 120,
"declarationsScanned": 340
},
"summary": {
"classesChecked": 120,
"declarationsChecked": 340,
"violations": 2
},
"violations": [
{
"className": "h-11",
"property": "height",
"rawValue": "calc(var(--spacing) * 11)",
"resolvedPx": 44,
"reason": "44px is not aligned to the 8/4px layout policy"
},
{
"className": "ml-7",
"property": "margin-left",
"rawValue": "7px",
"resolvedPx": 7,
"reason": "7px is not aligned to the 8/4px layout policy"
}
]
}
--helpnpx ui8px --help
npx ui8px -h
Shows usage instructions and exits with code 0.
Usage:
npx ui8px --design grid --input <path> --output <path> [options]
Options:
--design grid validate mode (required for spacing checks)
--input <path> path to class map JSON
--output <path> backlog output path
--spacing-base <number> spacing base for var(--spacing) (default: 4)
--root-font-size <number> root font size for rem conversion (default: 16)
--verbose show detailed violations in console
-h, --help show help
--design grid — required and only supported mode.--input <path> — input class map JSON (required).--output <path> — output backlog JSON path (required).--spacing-base <number> — multiplier for var(--spacing) (default 4).--root-font-size <number> — base font size for rem values (default 16).--verbose — print detailed violations.-h, --help — show usage.--design must be exactly grid.--input and --output can be omitted only with --help.--input, --output, --spacing-base, --root-font-size, --design) result in a validation error.--verbose is optional and defaults to false.npx ui8px --design grid --output ui8kit.map.backlog.json
Error: --input is required.
Exit code: 2
npx ui8px --design grid --input ui8kit.map.json
Error: --output is required.
Exit code: 2
npx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json --foo
Error: Unknown option: --foo
Exit code: 2
Error messages are prefixed with Error: by the parser and printed by the CLI wrapper before exiting.
npx ui8px --design grid --input ui8kit.clean.map.json --output ui8kit.clean.backlog.json
Terminal output:
Input: ui8kit.clean.map.json
Output: ui8kit.clean.backlog.json
Design: grid
Spacing base: 4px
Checked classes: 56
Checked declarations: 110
Violations: 0
No violations found.
Report saved to: /Users/.../ui8kit.clean.backlog.json
Example backlog:
{
"meta": {
"input": "ui8kit.clean.map.json",
"output": "ui8kit.clean.backlog.json",
"design": "grid",
"spacingBase": 4,
"rootFontSize": 16,
"generatedAt": "2026-03-11T12:10:00.000Z",
"classesScanned": 56,
"declarationsScanned": 110
},
"summary": {
"classesChecked": 56,
"declarationsChecked": 110,
"violations": 0
},
"violations": []
}
--verbose vs standard outputnpx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json
Standard output:
Input: ui8kit.map.json
Output: ui8kit.map.backlog.json
Design: grid
Spacing base: 4px
Checked classes: 120
Checked declarations: 340
Violations: 2
Found 2 violations.
Report saved to: /Users/.../ui8kit.map.backlog.json
npx ui8px --design grid --input ui8kit.map.json --output ui8kit.map.backlog.json --verbose
Verbose output:
Input: ui8kit.map.json
Output: ui8kit.map.backlog.json
Design: grid
Spacing base: 4px
Checked classes: 120
Checked declarations: 340
Violations: 2
Found 2 violations.
- h-11 | height: calc(var(--spacing) * 11) -> 44px
- ml-7 | margin-left: 7px -> 7px
Report saved to: /Users/.../ui8kit.map.backlog.json
0 — no violations.1 — violations found.2 — invalid usage or runtime error.FAQs
CLI utility for validating UI8Kit class maps against an 8 + 4 spacing policy
The npm package ui8px receives a total of 2 weekly downloads. As such, ui8px popularity was classified as not popular.
We found that ui8px 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.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.