{"_id":"@andrewaitken/ds-lint","name":"@andrewaitken/ds-lint","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@andrewaitken/ds-lint","version":"0.1.0","description":"Scan codebases for hardcoded colors, spacing, and font sizes that should use design tokens","license":"MIT","author":{"name":"Andrew Antoshkin"},"repository":{"type":"git","url":"git+https://github.com/AndrewAntoshkin/ds-lint.git"},"homepage":"https://antoshkin.tech/ds-lint/","keywords":["design-system","design-tokens","lint","hardcoded-values","css-variables","audit","cli"],"type":"module","bin":{"ds-lint":"bin/cli.js"},"scripts":{"test":"node --test test/*.test.js","lint":"node bin/cli.js"},"engines":{"node":">=18"},"_id":"@andrewaitken/ds-lint@0.1.0","gitHead":"b628edcadb19635cd0c71334476a6fcf56393ce8","bugs":{"url":"https://github.com/AndrewAntoshkin/ds-lint/issues"},"_nodeVersion":"22.16.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-YnIFb39zANTHYnErj+ehVvunRHek8SU4h+TLZ68XjdX5dfM4BTep+cOUaysIO5nRoq24Q/t6HvZwCy4ci4JzDg==","shasum":"adee74e363795268d1d15d690843fd4f18f904ba","tarball":"https://registry.npmjs.org/@andrewaitken/ds-lint/-/ds-lint-0.1.0.tgz","fileCount":8,"unpackedSize":18833,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHAyIDLsydNUu5d+UHsh5Dxl7Aa4Yd04kZuF9yhgBTbnAiBqJOVJP+seB8TcYneDMiYlasT04KW2cjmYSMuxo8Vn0g=="}]},"_npmUser":{"name":"andrewaitken","email":"andrew.antoshkin@gmail.com"},"directories":{},"maintainers":[{"name":"andrewaitken","email":"andrew.antoshkin@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ds-lint_0.1.0_1774619215051_0.10959168163887645"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-27T13:46:54.940Z","0.1.0":"2026-03-27T13:46:55.209Z","modified":"2026-03-27T13:46:55.410Z"},"maintainers":[{"name":"andrewaitken","email":"andrew.antoshkin@gmail.com"}],"description":"Scan codebases for hardcoded colors, spacing, and font sizes that should use design tokens","homepage":"https://antoshkin.tech/ds-lint/","keywords":["design-system","design-tokens","lint","hardcoded-values","css-variables","audit","cli"],"repository":{"type":"git","url":"git+https://github.com/AndrewAntoshkin/ds-lint.git"},"author":{"name":"Andrew Antoshkin"},"bugs":{"url":"https://github.com/AndrewAntoshkin/ds-lint/issues"},"license":"MIT","readme":"# ds-lint\n\nScan your codebase for hardcoded colors, spacing, font sizes, and border-radius values that should use design tokens.\n\n74% of React components contain hardcoded values that bypass design systems ([source](https://www.replay.build/blog/the-essential-guide-to-managing-design-token-drift-in-2026)). ds-lint finds them.\n\n## Install\n\n```bash\nnpm i -g ds-lint\n# or run directly\nnpx ds-lint src/\n```\n\n## Usage\n\n```bash\n# Scan a directory\nds-lint src/\n\n# Scan with token definitions (suggests replacements)\nds-lint src/ --tokens tokens.css\n\n# Output as markdown\nds-lint src/ --format markdown --out report.md\n\n# Fail in CI if violations found\nds-lint src/ --tokens tokens.css --strict\n```\n\n## What it detects\n\n| Category | Patterns |\n|----------|----------|\n| **Colors** | `#hex`, `rgb()`, `rgba()`, `hsl()`, `hsla()`, named CSS colors |\n| **Spacing** | `padding`, `margin`, `gap`, `top/right/bottom/left`, `width/height` in `px`/`rem` |\n| **Font sizes** | `font-size`, `line-height`, `letter-spacing` in `px`/`rem` |\n| **Radius** | `border-radius` in `px`/`rem` |\n\n## Token sources\n\nProvide a token file with `--tokens` to get replacement suggestions:\n\n- **CSS** — reads `--custom-property` declarations\n- **JSON** — reads `{ \"$value\": \"...\" }` or `{ \"value\": \"...\" }` format (DTCG compatible)\n- **Markdown** — reads tables from `figma-to-design-md` output\n\n## Inline ignore\n\n```css\n/* ds-lint-ignore */\n.special { color: #ff0000; }\n```\n\n## Output formats\n\n- `terminal` (default) — colored terminal output\n- `markdown` — table format for PRs and docs\n- `json` — machine-readable for CI pipelines\n\n## Pipeline\n\n```\ndesign-system-ai-starter → define tokens\nfigma-to-design-md       → extract from Figma\nds-lint                  → enforce in code ← you are here\nds-coverage              → measure adoption\nds-health                → check live site\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-a8d08769eff317109e4cacc8c3503d44"}