small-rules
An oxlint plugin for roblox-ts
small-rules
133 source-backed rules for React Luau, Ianitor lifecycle, Roblox UI conventions, and TypeScript quality.
{
"jsPlugins": ["@pobammer-ts/small-rules"],
"rules": {
"small-rules/ban-react-fc": "error",
"small-rules/no-print": "error",
"small-rules/prefer-early-return": "warn"
}
}In numbers
Counted from the rule metadata when the site builds, so they change when the plugin does.
These rules target the roblox-ts problems that show up in real code, with fixes for the repetitive cleanup that doesn’t need a review comment.
- Rules
- 133
- With fixes
- 33
- Categories
- 7
- Runs in
- oxlint
Start here
Install the plugin, copy a small config, then browse the rule pages when you want to tighten one part of the codebase.
Browse by category
Each category is a part of the codebase you might want to harden. The number is how many rules it has.
React Rules
41Rules for React Luau components, hooks, and JSX patterns.
Jecs Rules
3Rules for Jecs worlds, queries, and component operations in Roblox projects.
Roblox & Luau Rules
26Rules for Roblox instances, Ianitor, Color3, UDim2, and other Roblox APIs.
Naming & Conventions
6Rules for naming conventions, type style, and file naming.
English
4Rules for English in identifiers: spelling, plurals, abbreviations, and verb-first function names.
Anti-Slop
16Rules to prevent common LLM slop. Ported from dmmulroy/anti-slop.
General Logic & Style
37Rules for code quality, control flow, and common pitfalls.
Why it exists
Oxlint handles the general linting work. This plugin covers roblox-ts APIs, React Luau patterns, Ianitor lifecycle code, and the mistakes that are specific to those ecosystems.
Oxlint-native
Uses the oxlint plugin API directly, so these rules run in oxlint instead of going through an ESLint compatibility layer.
Roblox-aware
Checks React Luau patterns, Ianitor lifecycle code, UI conventions, and Roblox APIs that a general TypeScript linter cannot know about.
Fixes where they help
33 rules currently have fixes or fixer suggestions for cleanup that is usually mechanical.
Start enforcing
Pick the rules that match your standards, and let oxlint catch the mechanical things before they reach review.