@fal-works/lint-js-global
v0.1.0
Published
Globally-installed CLI that runs Oxfmt and Oxlint with type-aware linting.
Readme
@fal-works/lint-js-global
Runs Oxfmt and Oxlint (+ auto-fix).
Intended as a globally-installed alternative to adding linter devDependencies to every small project.
Highlights
- Bundles
oxfmt,oxlint, andoxlint-tsgolint(type-aware) with a strict shipped ruleset; no per-project config. - Pipe-friendly streams: per-file lint findings on stdout, everything else on stderr.
- Diagnostics tuned for LLM coding agents:
- Source slice inline per finding.
- Per-file grouping resembling ESLint stylish.
L:Ccolumns in UTF-16 code units (matches ESLint, LSP, VS Code, and JS string indices).no-unsafe-*findings carry a remediation hint.
Install
pnpm install -g @fal-works/lint-js-globalUsage
Run from a project root:
lint-js [--check] [--format-only | --lint-only] [--unix] [path...]The current directory must contain package.json, as a guard against running without target paths in a wide location such as ~/.
Target paths themselves may point anywhere; without them the whole project is processed.
Options
--checkverifies without rewriting files.--format-onlyruns only the format phase.--lint-onlyruns only the lint phase.--unixemits one diagnostic per line (<file>:<line>:<col>: <message> [<code>]), for tools that consume that form.
--format-only and --lint-only are mutually exclusive.
Exit codes
0: success; no unfixed findings remain.1: unfixed fmt/lint findings were reported.2: lint-js itself failed (e.g. invalid arguments, missingpackage.json, or tool launch failure).
Example (stdout)
src/index.ts
1:7 Unsafe assignment of an any value. [typescript(no-unsafe-assignment)]
data = JSON.parse("{}")
2:18 Unsafe member access .foo on an `any` value. [typescript(no-unsafe-member-access)]
foo