Skip to content

holoflash/oxlint-tui

Repository files navigation

oxlint-tui

A lightweight, dependency-free Node.js TUI for browsing and running all available oxlint rules.

It automatically loads your local configuration (if one exists) to show you the current status of your project. You can then toggle rules on the fly to see how they affect your codebase without altering your actual configuration file.

screenshot

Features

  • Rule Discovery: Explore the full catalog of Oxlint rules, categorized by scope and severity, to discover new linting opportunities for your project.
  • Non-Destructive: Toggling rules happens entirely in memory. No changes are written to disk, making it safe to experiment without messing up your config or comments.
  • Config Aware: Reads .oxlintrc.json or your provided config file to initialize the state, but works even if no config file exists.
  • Details: View description, category, scope, fix, default, and type-aware rule parameters at a glance.
  • Hit Counts: See exactly how many violations each rule triggers in your codebase. Hits are displayed next to the rule name (e.g., no-debugger (3)).
  • Run All: Quickly run every available rule (even those toggled off) to see what else might be lurking in your code.
  • View Docs: Press ENTER on any rule to open its official documentation in your browser.
  • Zero Dependencies: Written in pure Node.js without any heavy TUI libraries.

Insights

Press i to view diagnostic insights about your codebase:

  • Violations by Category: See which rule categories are triggering the most violations, with counts and percentages.
  • Fixability Stats: Understand how many violations can be auto-fixed with oxlint --fix vs. requiring manual changes.

screenshot2

This helps you prioritize which issues to tackle first and understand the potential impact of running auto-fix.

Usage

Quick Start (via npx)

Run it directly in your project folder (where your .oxlintrc.json is located):

npx oxlint-tui

Custom Config Path

If you want to load an initial state from a specific config file:

npx oxlint-tui your-oxlint-config.json

Global Install

If you use oxlint frequently, you can install it globally:

npm install -g oxlint-tui

oxlint-tui

Keyboard Controls

Key Action
Arrows Navigate between Categories, Rules, and Details
1 / 2 / 3 Set severity (Off / Warn / Error)
a All: Run all available rules
s Selected: Run selected rule or category
t Toggled: Run only active/toggled rules
i Insights: Toggle the summary distribution view
d Docs: Open documentation in browser
q Quit: Exit application

Requirements

  • Node.js >= 20
  • The tool runs npx oxlint and npx oxlint-tsgolint internally.

Contributing

If you have any feature requests, want to report a bug, or want to contribute to this project, please open an issue or submit a pull request on GitHub.

License

MIT

About

A lightweight, dependency-free Node.js Terminal User Interface (TUI) for browsing and running all available oxlint rules.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors