Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@mft/eslint-config-momentumft

Package Overview
Dependencies
Maintainers
0
Versions
37
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@mft/eslint-config-momentumft

Our ESLint configuration

  • 11.0.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
283
increased by12.3%
Maintainers
0
Weekly downloads
 
Created
Source

eslint-config-momentumft

Our ESLint configuration

To use this version, ensure you have eslint version 9 or above installed. This will install all the plugins required for you. To make use of it, define an eslint.config.js file in your repository with the following contents:

const {base, testsWithFiles} = require("@mft/eslint-config-momentumft")

module.exports = [
  ...base,
  testsWithFiles,
]

The example above is a good starting point for JavaScript based configurations with tests defined in src/**/__tests__ and test/ directories.

If you have tests in different directories you can define the config as follows:

const {base, tests} = require("@mft/eslint-config-momentumft")

module.exports = [
  ...base,
  {
    files: ["unit-tests/**/*.js"],
    ...tests
  }
]

This library is to help get you setup with ESLint config without having to manipulate the rules yourself manually. Keeping ESLint config files on your services small.

Below are examples when using our other helper configurations.

React

const {base, testsWithFiles} = require("@mft/eslint-config-momentumft")
const reactConfig = require("@mft/eslint-config-momentumft/react")

module.exports = [
  ...base,
  ...testsWithFiles,
  ...reactConfig
]

JSON

const {base, testsWithFiles} = require("@mft/eslint-config-momentumft")
const jsonConfig = require("@mft/eslint-config-momentumft/json")

module.exports = [
  ...base,
  ...testsWithFiles,
  ...jsonConfig
]

TypeScript (New)

We now hav introduced a common TypeScript configuration which allows you to get started quicker than before. Simply define the config below and you are on your way:

const {baseConfigWithFiles} = require("@mft/eslint-config-momentumft/typescript")
const {base, testsWithFiles} = require("@mft/eslint-config-momentumft")

module.exports = [
  ...base,
  ...baseConfigWithFiles,
  testsWithFiles,
]

If you have TypeScript files that aren't in the src directory, then you can use the configurations baseConfig and declarationConfig that are defined within the same file, and specify the files you wish to have these applied to, as seen in the example below:

const {base} = require("@mft/eslint-config-momentumft")
const react = require("@mft/eslint-config-momentumft/react")
const {baseConfig, declarationConfig} = require("@mft/eslint-config-momentumft/typescript")

module.exports = [
  ...base,
  ...react,
  {
    files: ["modules/**/*.{ts,tsx}"],
    ...baseConfig
  },
  {
    files: ["modules/**/*.d.ts}"],
    ...declarationConfig
  },
  {
    rules: {
      "react/react-in-jsx-scope": "off",
    }
  }
]

Functional Programming

NB: The main plugin we use for this config hasn't been updated to use the new ESLint configuration, therefore the certainty of it being correct is unknown. This plugin only seems to be used by one service so may not be an issue for most.

const {base, testsWithFiles} = require("@mft/eslint-config-momentumft")
const fpConfig = require("@mft/eslint-config-momentumft/fp")

module.exports = [
  ...base,
  ...testsWithFiles,
  ...fpConfig
]

Keywords

FAQs

Package last updated on 23 Dec 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc