{"id":26227,"library":"remark-lint-list-item-indent","title":"remark-lint-list-item-indent","description":"remark-lint rule (v4.0.1) to check whitespace between list item markers (including bullets and ordered list markers) and content. Part of the remark-lint ecosystem. Supports three indentation styles: 'one' (marker + 1 space), 'tab' (marker + spaces to next tab stop), and 'mixed' (tight lists as 'one', loose lists as 'tab'). Ships TypeScript types. Used in presets like remark-preset-lint-recommended (default 'one') and remark-preset-lint-markdown-style-guide (default 'mixed'). ESM-only package; requires Node.js 16+. Minimal alternative to more complex lint rules.","status":"active","version":"4.0.1","language":"javascript","source_language":"en","source_url":"https://github.com/remarkjs/remark-lint#main","tags":["javascript","indent","item","lint","list","remark","remark-lint","remark-lint-rule","rule","typescript"],"install":[{"cmd":"npm install remark-lint-list-item-indent","lang":"bash","label":"npm"},{"cmd":"yarn add remark-lint-list-item-indent","lang":"bash","label":"yarn"},{"cmd":"pnpm add remark-lint-list-item-indent","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency providing the lint framework","package":"remark-lint","optional":false},{"reason":"Required as part of the remark ecosystem but not a direct dependency","package":"unified","optional":true}],"imports":[{"note":"Default export, not named. Since v4 ESM-only.","wrong":"import { remarkLintListItemIndent } from 'remark-lint-list-item-indent'","symbol":"remarkLintListItemIndent","correct":"import remarkLintListItemIndent from 'remark-lint-list-item-indent'"},{"note":"TypeScript type import for the options type.","symbol":"Options","correct":"import type { Options } from 'remark-lint-list-item-indent'"},{"note":"CommonJS require is not supported; package is ESM-only since v4. This example is for context only.","wrong":"const { remarkLintListItemIndent } = require('remark-lint-list-item-indent')","symbol":"CJS require","correct":"const remarkLintListItemIndent = require('remark-lint-list-item-indent')"}],"quickstart":{"code":"import remarkLint from 'remark-lint';\nimport remarkLintListItemIndent from 'remark-lint-list-item-indent';\nimport remarkParse from 'remark-parse';\nimport { unified } from 'unified';\nimport { reporter } from 'vfile-reporter';\n\nconst file = await unified()\n  .use(remarkParse)\n  .use(remarkLint)\n  .use(remarkLintListItemIndent, 'tab') // enforce 'tab' style\n  .process('* Item\\n\\n1.  Item');\n\nconsole.error(reporter(file));","lang":"typescript","description":"Create a unified processor with remark-lint and the list-item-indent rule to check markdown indentation style."},"warnings":[{"fix":"Use import or dynamic import. If you need CJS, use v3.”","message":"Package is ESM-only; CommonJS require is not supported.","severity":"breaking","affected_versions":">=4"},{"fix":"Consider using remark-stringify with listItemIndent option.","message":"The rule is only a warning; it does not auto-fix. Use remark-stringify with appropriate settings for fixing.","severity":"gotcha","affected_versions":">=0"},{"fix":"Prefer 'one' or 'tab' explicitly.","message":"The 'mixed' option may be deprecated in future versions.","severity":"deprecated","affected_versions":">=4"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use import or switch to dynamic import.","cause":"Using CJS require with an ESM-only package","error":"require() of ES Module"},{"fix":"Use default import: import remarkLintListItemIndent from 'remark-lint-list-item-indent'","cause":"Imported as named export instead of default","error":"TypeError: (0 , remark_lint_list_item_indent_default) is not a function"},{"fix":"npm install remark-lint","cause":"Missing peer dependency remark-lint","error":"Cannot find module 'remark-lint'"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}