
coderaiser/putout
Releases1.5K
Frequency1 day 20 hours
Last Release
Stars793
🐊 Pluggable and configurable JavaScript Linter, code transformer and formatter with superpowers 💪: built-in support of js, jsx, ts, markdown, yaml, toml, json and ignore. Write declarative codemods in a simplest possible way 😏
Linked projects
🐊 Pluggable and configurable code transformer with built-in ESLint, Babel and support of js, jsx, typescript, flow, markdown, yaml and json
ESLint plugin for 🐊Putout
🐊Putout config for ESLint
🐊Putout plugin adds ability to find and remove blocks with empty body
🐊Putout plugin adds ability use destructuring on variable declarations
🐊Putout plugin adds ability to merge destructuring properties
putout plugin adds ability to find and remove test.only calls
🐊Putout plugin adds ability to find and remove process.exit
putout plugin adds ability to find and remove process.exit
putout plugin adds ability to find and remove test.only calls
🐊Putout plugin adds ability to find and remove 'debugger' statement
🐊Putout plugin adds ability to find and remove unused variables
🐊Putout plugin adds ability to remove unused private fields
🐊Putout plugin adds ability to convert ecma script module to commonjs
🐊Putout plugin adds ability to find and remove console.log calls
🐊Putout plugin adds ability to transform madrun scripts
🐊Putout plugin adds ability to find and remove unused expressions
🐊Putout formatter shows progress and shows result at the end
🐊Putout plugin adds ability to extract object properties into variable
putout plugin adds ability to convert top-level return to process.exit
Operate on AST for 🐊 Putout
🐊Putout plugin adds ability to merge if-statements
🐊Putout plugin adds ability to find and remove unreachable code
🐊Putout plugin adds ability to find and remove useless variables
🐊Putout formatter stores output and dump it on end
🐊Putout plugin adds ability to find and remove test.constant-conditions calls
🐊Putout plugin adds ability to extract sequence expressions
🐊Putout plugin adds ability to convert commonjs to ecma script module
🐊Putout plugin adds ability to convert 'Math.pow()' to 'exponentiation operator'
🐊Putout formatter shows code frame with an error
🐊Putout plugin adds ability to convert 'forEach' to 'for...of'
🐊Putout plugin adds ability to convert Object.assign to merge spread
🐊Putout formatter output json on end
🐊Putout plugin adds ability to convert arguments to rest
🐊Putout plugin adds ability to find and remove test.boolean-from-logical-expressions calls
🐊Putout plugin adds ability to simplify ternary operator
🐊Putout plugin adds ability to add or remove strict mode directive
🐊Putout plugin adds ability to find and remove nested blocks
🐊Putout formatter streams output
🐊Putout plugin adds ability to convert 'apply' to 'spread'
putout plugin adds ability to remove double negations
🐊Putout plugin helps with plugins development
putout plugin adds ability to convert binary expression to boolean
🐊Putout plugin adds ability to remove useless 'Array.from()'
Run 🐊Putout plugins
🐊Putout plugin adds ability to apply shorthand properties
🐊Putout plugin adds ability to find and remove useless arguments
🐊Putout plugin improves Promise-related code
putout plugin adds ability to convert spread to Array.from
🐊Putout parser
load plugins and prepare them to run
🐊Putout plugin adds ability to find and remove useless escape
putout plugin adds ability to remove useless async
putout plugin adds ability to find and remove unused types
🐊Putout engine processor runner
🐊Putout plugin add ability to apply nullish coalescing operator (??)
🐊Putout plugin adds ability to convert indexOf to includes
🐊Putout plugin adds ability to find and remove useless template string
🐊Putout plugin adds ability to convert throw statement into throw expression
putout plugin adds ability to remove useless type convertion
🐊Putout processor for javascript
🐊Putout plugin adds ability to find and remove duplicate keys
🐊Putout plugin adds ability to convert anonymous to arrow function
🐊Putout plugin adds ability to remove useless typeof
🐊Putout plugin adds ability to split nested destructuring
🐊Putout plugin helps with regexp
🐊Putout plugin adds ability to remove useless for-of
traverse ast-nodes
🐊Putout plugin adds ability apply numeric separators
🐊Putout plugin adds ability to remove useless template expressions
compare AST-nodes according to 🦎 PutoutScript
putout plugin adds ability to apply top level await
putout plugin adds ability to convert generic to shorthand
🐊Putout plugin helps with migration to latest webpack
🐊Putout plugin adds ability to find and remove useless functions
🐊Putout plugin adds ability to find and remove iife
🐊Putout formatter shows progress and codeframe at the end
🐊Putout plugin helps with .gitignore
🐊Putout formatter shows memory usage
putout plugin adds ability to find and remove duplicate keys from interface
🐊Putout processor adds ability to lint ignore
🐊Putout plugin adds ability to convert array copy to slice
🐊Putout plugin adds ability to convert for-in to for-of
🐊Putout plugin adds ability to reuse duplicate init
🐊Putout plugin adds ability to merge duplicate-imports
putout plugin adds ability to remove useless await
putout plugin adds ability to find and remove useless
🐊Putout plugin adds ability to find and remove unused for-of variables
🐊Putout processor adds ability to lint json
🐊Putout plugin adds ability apply optional chaining
🐊Putout formatter shows progress and shows result at the end
🐊Putout plugin for eslint config
🐊Putout processor adds ability to parse markdown files and lint JavaScript, JSX, TypeScript and JSON snippets
🐊Putout plugin adds ability to remove useless spread
🐊Putout plugin adds ability to convert equal to strict equal
🐊Putout plugin adds ability to convert for to for-of
🐊Putout plugin adds ability to find and remove unreferenced variables
🐊Putout plugin helps with Travis CI
🐊Putout processor adds ability to parse yaml files and lint js snippets
🐊Putout plugin adds ability to remove useless constructor
🐊Putout plugin adds ability to remove useless operand
🐊Putout plugin adds ability to convert comparison to boolean
🐊Putout operator adds ability to check if provided regexp can be converted to string without losing it's sense
🐊Putout formatter output json-lines
🐊Putout plugin adds ability to simplify logical expressions
🐊Putout processor adds ability to parse css files
🐊Putout plugin adds ability to convert mockRequire to mockImport
🐊Putout plugin adds ability to transform code to new API of Node.js
🐊Putout plugin helps with tests
toggle rules in .putout.json
🐊Putout plugin adds ability to declare undefined variables
🐊Putout plugin adds ability to remove useless array.entries()
🐊Putout plugin helps with .browserlistrc
🐊Putout plugin adds ability apply if condition
🐊Putout plugin adds ability convert assignment to comparison
🐊Putout plugin adds ability to remove useless type conversion
🐊Putout plugin adds ability to find and remove useless return
validate args, sugest closest variant
🐊Putout plugin adds ability to apply Array.isArray()
🐊Putout plugin adds ability to find and remove duplicates from logical expressions
🐊Putout plugin adds ability to remove useless 'continue'
🐊Putout plugin for transforming TypeScript code
🐊Putout plugin adds ability to remove boolean from assertions
🐊Putout plugin adds ability to remove useless `.map`
🐊Putout plugin helps with .npmignore
putout plugin adds ability apply await import
🐊Putout plugin adds ability to convert concat to flat
🐊Putout plugin adds ability to remove useless Array constructor
putout plugin adds ability apply try-catch
🐊Putout plugin helps to maintain putout config
The cache of Places found by 🐊Putout
handle keypress
🐊Putout operator adds ability to declare referenced variables that was not defined
🐊Putout plugin adds ability to remove useless conditions
🐊Putout plugin adds ability to convert quotes to backticks
🐊Putout plugin for package.json
🐊Putout plugin adds ability to find and remove duplicate case
🐊Putout plugin adds ability to remove useless operator 'new'
convert "rules" section to "match" in .putout.json
🐊Putout plugin adds ability to convert bitwice to logical operator
🐊Putout plugin adds ability convert assignment to arrow function
🐊Putout operator adds ability to add args to referenced variables that was not defined
🐊Putout plugin adds ability to simplify assignment
🐊Putout plugin adds ability apply array.at
🐊Putout plugin adds ability to convert typeof to is type
🐊Putout plugin helps with github actions
🐊Putout plugin adds ability to convert map to for...of
putout plugin helps whith .gitignore
putout plugin adds ability to find and remove empty patterns
🐊Putout processor adds ability to parse html files and lint js snippets
🐊Putout processor adds ability to typecheck typescript
putout plugin adds ability to convert any to primitive type
🐊Putout plugin adds ability to remove useless else
🐊Putout plugin adds ability to apply try-catch
🐊Putout plugin adds ability move declarations before references
🐊Putout plugin adds ability apply 'montag'
🐊Putout plugin adds ability use apply early return
🐊Putout plugin adds ability to convert '.reduce()' to 'for...of'
🐊Putout plugin adds ability to remove useless and add missing operator 'new'
putout plugin adds ability to apply filter(Boolean)
🐊Putout plugin adds ability to remove useless mapping modifiers
putout plugin adds ability to remove useless mapped types
putout plugin adds ability to apply as type assertion
putout plugin adds ability use apply utility types
putout plugin adds ability to find and remove duplicates from union
putout plugin adds ability to find and remove test.only calls
🐊Putout plugin adds ability to find and remove useless template string
putout plugin adds ability to convert arguments to spread
🐊Putout plugin adds ability to remove useless 'replace()'
🐊Putout plugin adds ability to convert 'Math.imul()' to operator '*'
🐊Putout plugin adds ability to remove useless assign
🐊Putout plugin adds ability to convert 'Math.sqrt()' to 'Math.hypot()'
🐊Putout plugin adds ability to apply comparison order
🐊Putout plugin adds ability to convert 'const' to 'let'
🐊Putout plugin adds ability to declare imports first
putout operator adds ability to add argument to referenced variables that wan not defined
putout plugin adds ability to convert any to primitive type
🐊Putout plugin adds ability to add missing operator 'new'
Test runner for 🐊Putout plugins