Registry / testing / eslint-config-moneyforward

eslint-config-moneyforward

JSON →
library6.0.0jsnpmunverified

Money Forward's extensible ESLint shared config providing curated rule sets for JavaScript/TypeScript projects. Current stable version: 6.0.0 (released 2026-04-18). The config is actively maintained by Money Forward and supports both flat config (ESLint v9) and legacy .eslintrc format. It includes presets for essentials, TypeScript, React, Next.js, Node.js, Storybook, JSDoc, and testing with Jest. Key differentiators: opinionated rules with breaking changes documented; TypeScript-first; flat config support via 'eslint-config-moneyforward/flat' subpath exports. Requires Node ^18.18.0 || ^20.9.0 || >=21.1.0 and peer dependencies on eslint ^8.57.0 || ^9.0.0, jest, and typescript ^4.8.4 || ^5.0.0.

testing
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.

Flat config import path uses subpath './flat'. Required for ESLint v9 flat config.

import { essentials } from 'eslint-config-moneyforward/flat';

Must import typescript after essentials. Do not import from package root.

import { essentials, typescript } from 'eslint-config-moneyforward/flat';

ESLint v9 flat config requires exporting an array from eslint.config.js.

import { essentials } from 'eslint-config-moneyforward/flat'; export default [...essentials];

Use 'moneyforward/essentials' not full package name. For flat config use import.

{ "extends": ["moneyforward/essentials"] }

Install dependencies and configure ESLint flat config with TypeScript, testing, and React presets.

npm install --save-dev eslint-config-moneyforward eslint typescript jest # Create eslint.config.js import { essentials, typescript, test, react } from 'eslint-config-moneyforward/flat'; export default [ ...essentials, ...typescript, ...test.jest, ...react, { rules: { 'no-console': 'warn' } } ];
Debug
Known footguns
breakingVersion 6.0.0 enables 13 new error-level react-hooks rules by default (component-hook-factories, config, error-boundaries, gating, globals, immutability, preserve-manual-memoization, purity, refs, set-state-in-effect, set-state-in-render, static-components, use-memo) and 2 new warn-level rules.
breakingFlat config support requires ESLint v8.57.0 or v9+ and import from 'eslint-config-moneyforward/flat'. Legacy exports from root are removed in v6.
deprecatedLegacy .eslintrc format (extends: ['moneyforward/...']) is not deprecated but flat config is recommended for new projects with ESLint v9.
gotchaThe TypeScript rule set must be added AFTER essentials in flat config arrays, otherwise rules may not apply correctly.
gotchaPeer dependencies are not automatically installed. You must manually install eslint, typescript, and jest.
Upgrade
Version history

Breaking-change detection hasn't run for this library yet.

Audit
Security & dependencies

CVE tracking and dependency tree are planned for a later release.

Agent activity
9 hits · last 30 days
gptbot
4
ahrefsbot
4
script
1
Resources