A self-contained JavaScript linter, mostly matching non-formatting rules of Standard.
npm install --save-dev lunte
lunte [optional: dir or glob]
Globs are supported:
lunte "src/**/*.js"
By default Lunte skips node_modules/. Manage additional exclusions with .lunteignore (gitignore-style patterns).
Files ending in .json are also linted. Lunte treats them as strict JSON, so invalid syntax is reported and structural rules such as no-dupe-keys still apply.
Configuration is optional, but when needed create a .lunterc (or .lunterc.json) at the project root.
{
"env": ["node"],
"globals": ["MY_APP"],
"plugins": ["lunte-plugin-pear"],
"rules": {
"no-undef": "off",
"pear/no-apples": "error"
},
"disableHolepunchGlobals": true
}
env enables preset global sets (node, browser, es2021).globals adds project-specific globals.rules sets severities per rule ("off", "warn", "error", or 0/1/2).disableHolepunchGlobals skips adding Pear/Bare globals.Command-line overrides are available for ad-hoc runs:
lunte --env browser --global Pear --rule no-unused-vars=off src/
@sveltejs/acorn-typescript; no extra install needed..ts, .tsx, .mts, .cts, .d.ts (and .jsx when present) automatically switch to the TS parser.no-undef and no-unused-vars; other rules run without type checking.Load third-party rule packs by listing module IDs under plugins. Each plugin should export a rules array (or object) of rule definitions with unique meta.name values.
{
"plugins": ["./rules/lunte-plugin-pear.js", "lunte-plugin-pear"],
"rules": {
"pear/no-apples": "error"
}
}
For ad-hoc runs, lunte --plugin lunte-plugin-pear --plugin ./rules/lunte-plugin-pear.js src/ applies the same modules.
const cached = maybeUndefined() // lunte-disable-line no-undef
// lunte-disable-next-line
useGlobalResource()
lunte-disable-line suppresses the listed rules, or all rules when none are listed, on the same line.lunte-disable-next-line applies to the following line.eslint-disable-* directives are also supported for compatibility.Lunte ships with a separate LSP package: lunte-lsp.
Monorepo: https://github.com/holepunchto/lunte

Apache-2.0