effect-oxlint lets you write oxlint custom lint rules using Effect v4. Instead of mutable counters and nullable returns, you getDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/mpsuesser/effect-oxlint/llms.txt
Use this file to discover all available pages before exploring further.
Ref-based state, Option-returning AST matchers, and composable visitor combinators — all bridged to oxlint’s synchronous plugin API via Effect.runSync.
Quickstart
Define your first rule and assemble it into a plugin in minutes.
Installation
Install via npm, Bun, or Deno (JSR) and configure your runtime.
Writing Rules
Learn how to use Rule.define, convenience factories, and Effect generators.
API Reference
Explore every export across all 10 public modules.
What you can build
effect-oxlint is designed for teams running Effect who want to enforce Effect-specific conventions at lint time — rules like “no throw inside Effect.gen”, “use Clock service instead of new Date()”, or “import from effect/Array not Array.prototype”.Rule.define
Write fully effectful create generators with yield* for state and context.
Visitor combinators
Compose, merge, filter, and accumulate visitors without mutation.
AST matchers
Option-returning matchers with dual API for safe, composable AST queries.
Diagnostics
Structured diagnostic builders with composable autofix functions.
Testing
50+ AST node builders and assertion helpers for @effect/vitest.
Plugin assembly
Assemble rules into oxlint-compatible plugins with Plugin.define.