{"id":26289,"library":"remark-lint-unordered-list-marker-style","title":"remark-lint-unordered-list-marker-style","description":"remark-lint rule to enforce consistent unordered list marker styles (asterisk, plus, or hyphen) in Markdown. Current stable version 4.0.1, part of the remark-lint ecosystem for linting Markdown. Ships TypeScript types. Defaults to 'consistent' (first style detected), but can be set to '*', '+', or '-'. Integrates with remark-stringify for auto-fixing. ESM-only since v4, requires Node.js 16+. Differentiators: part of the unified collective, highly configurable, and recommended by markdown style guides.","status":"active","version":"4.0.1","language":"javascript","source_language":"en","source_url":"https://github.com/remarkjs/remark-lint#main","tags":["javascript","lint","list","marker","ordered","remark","remark-lint","remark-lint-rule","rule","typescript"],"install":[{"cmd":"npm install remark-lint-unordered-list-marker-style","lang":"bash","label":"npm"},{"cmd":"yarn add remark-lint-unordered-list-marker-style","lang":"bash","label":"yarn"},{"cmd":"pnpm add remark-lint-unordered-list-marker-style","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency: remark-lint is required to enable the linting framework; this rule runs as a plugin within it.","package":"remark-lint","optional":false},{"reason":"Unified is the underlying processing chain; the rule is a unified plugin.","package":"unified","optional":false},{"reason":"Required for parsing Markdown into AST; needed when using the API programmatically.","package":"remark-parse","optional":true},{"reason":"Required for stringifying Markdown; used to apply fixes or output the processed file.","package":"remark-stringify","optional":true}],"imports":[{"note":"ESM-only since v4; CommonJS require() will fail. This is the default export.","wrong":"const remarkLintUnorderedListMarkerStyle = require('remark-lint-unordered-list-marker-style')","symbol":"remarkLintUnorderedListMarkerStyle","correct":"import remarkLintUnorderedListMarkerStyle from 'remark-lint-unordered-list-marker-style'"},{"note":"Options is a TypeScript type; use type import to avoid runtime errors.","wrong":"import { Options } from 'remark-lint-unordered-list-marker-style'","symbol":"Options","correct":"import type { Options } from 'remark-lint-unordered-list-marker-style'"},{"note":"Style is a TypeScript type; use type import to avoid runtime errors.","wrong":"import { Style } from 'remark-lint-unordered-list-marker-style'","symbol":"Style","correct":"import type { Style } from 'remark-lint-unordered-list-marker-style'"}],"quickstart":{"code":"import { unified } from 'unified'\nimport remarkParse from 'remark-parse'\nimport remarkLint from 'remark-lint'\nimport remarkStringify from 'remark-stringify'\nimport remarkLintUnorderedListMarkerStyle from 'remark-lint-unordered-list-marker-style'\nimport { reporter } from 'vfile-reporter'\nimport { read } from 'to-vfile'\n\nconst file = await unified()\n  .use(remarkParse)\n  .use(remarkLint)\n  .use(remarkLintUnorderedListMarkerStyle, '*') // enforce asterisk markers\n  .use(remarkStringify)\n  .process(await read('example.md'))\n\nconsole.error(reporter(file))","lang":"typescript","description":"Lints an MD file enforcing asterisk markers for unordered lists, reporting any violations."},"warnings":[{"fix":"Switch to import syntax and ensure Node.js 16+.","message":"Package is ESM-only since v4. Using require() will throw 'ERR_REQUIRE_ESM'.","severity":"breaking","affected_versions":">=4.0.0"},{"fix":"Update Node.js to 16 or later.","message":"Minimum Node.js version bumped to 16+ in v4.","severity":"breaking","affected_versions":">=4.0.0"},{"fix":"Add bullet option to remark-stringify: .use(remarkStringify, { bullet: '*' })","message":"The rule does not auto-fix; use remark-stringify configuration to set bullet style.","severity":"gotcha","affected_versions":">=3.0.0"},{"fix":"Explicitly set intended style to avoid ambiguity.","message":"Option 'consistent' behaves differently: it uses the first marker found, not a global style.","severity":"deprecated","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Change to import statement: import remarkLintUnorderedListMarkerStyle from 'remark-lint-unordered-list-marker-style'","cause":"Using CommonJS require() on this ESM-only package.","error":"ERR_REQUIRE_ESM"},{"fix":"npm install remark-lint","cause":"Missing peer dependency remark-lint.","error":"Error: Cannot find module 'remark-lint'"},{"fix":"Ensure options is one of: '*', '+', '-', or 'consistent'. Example: .use(remarkLintUnorderedListMarkerStyle, '*')","cause":"Passing invalid options type (e.g., array instead of string).","error":"TypeError: options is not iterable"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}