Registry / testing / eslint-plugin-ft-flow

eslint-plugin-ft-flow

JSON →
library3.0.11jsnpmunverified

ESLint plugin providing Flowtype linting rules, maintained by the flow-typed community as a fork of the original eslint-plugin-flowtype. Current version 3.0.11, with regular releases every few months. Unlike the original plugin, it is actively maintained, supports ESLint 9 flat config, and includes additional rules like `no-duplicate-type-union-intersection-members` and `sort-type-union-intersection-members`. Requires `eslint` ^8.56.0 or ^9.0.0 and optionally `hermes-eslint` >=0.15.0.

npm install eslint-plugin-ft-flow
INSTALL
IMPORT
SIG · ESLINT-PLUGIN-FT-F
E
eslint-plugin-ft-flow
testingjavascriptv3.0.11
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

plugin (default)
import plugin from 'eslint-plugin-ft-flow'
const plugin = require('eslint-plugin-ft-flow')
ESM-only since v3; CommonJS require not supported.
configs
import { configs } from 'eslint-plugin-ft-flow'
const configs = require('eslint-plugin-ft-flow').configs
Use named import for configs (e.g., recommended).
rules
import { rules } from 'eslint-plugin-ft-flow'
const rules = require('eslint-plugin-ft-flow').rules
Access rule definitions via named import.

Show how to set up eslint-plugin-ft-flow with ESLint flat config, enabling a few rules for Flowtype linting.

// eslint.config.js (flat config, ESLint 9) import plugin from 'eslint-plugin-ft-flow'; export default [ { files: ['**/*.js', '**/*.jsx'], plugins: { 'ft-flow': plugin, }, rules: { 'ft-flow/define-flow-type': 1, 'ft-flow/use-flow-type': 1, 'ft-flow/no-weak-types': 2, }, }, ];
Debug
Known issues
breakingVersion 3.0.10 deprecated CommonJS require; only ESM imports work.
fix
Use import statement instead of require().
affects: >=3.0.10
deprecatedSome rules may be deprecated and replaced; check documentation.
fix
Use the recommended rule set and migrate deprecated rules.
affects: >=3.0.0
gotchaRule 'define-flow-type' may conflict with ESLint's 'no-unused-vars'.
fix
Add 'no-unused-vars': 'off' or configure appropriately.
gotchaPeer dependency hermes-eslint is optional but if used must be >=0.15.0.
fix
Install hermes-eslint@^0.15.0 if you need Hermes parsing.
affects: >=3.0.0
gotchaFlat config (ESLint 9) is supported but not all legacy config formats.
fix
Use eslint.config.js flat config; for .eslintrc use version <3.0.0.
affects: >=3.0.0
Errors
Common errors & fixes
Error: Plugin 'ft-flow' was conflicted between '.eslintrc.js' and 'eslint.config.js'
Mixing legacy and flat configs.
fix
Use only one config format; remove .eslintrc.* if using eslint.config.js.
TypeError: Cannot destructure property 'getSourceCode' of 'context' as it is undefined.
Using an incompatible version of ESLint or outdated plugin version.
fix
Update eslint to ^8.56.0 or ^9.0.0 and eslint-plugin-ft-flow to >=3.0.10.
Error: Cannot find module 'eslint-plugin-ft-flow'
Module not installed or not resolved.
fix
Run npm install eslint-plugin-ft-flow --save-dev
Parsing error: The keyword 'import' is reserved
ESLint is not configured for ES modules.
fix
Set 'sourceType': 'module' in ESLint config or use .mjs extension.
Upgrade
Version history
3.0.11latest on npm
Audit
Dependencies
eslintrequiredpeer dependency: required for plugin to work
hermes-eslintoptionaloptional peer dependency for Hermes parser support
Agent activity
2 hits · last 30 days
node
2
Resources
eslint-plugin-ft-flow — npm install eslint-plugin-ft-flow · libregistry