Skip to content

satazor/eslint-plugin-import-esm

Repository files navigation

eslint-plugin-import-esm

ESLint plugin that enforces imports to follow native ESM resolution.

Installation

You'll first need to install ESLint v9:

npm i eslint --save-dev

Next, install eslint-plugin-import-esm:

npm install eslint-plugin-import-esm --save-dev

This plugin works well with eslint-plugin-import, which validates existence of paths amongst other checks.

Usage

Using the recommended preset:

import { defineConfig } from "eslint/config";
import importEsmPlugin from 'eslint-plugin-import-esm';

export default defineConfig([
  importEsmPlugin.configs.recommended,
  ...
]);

Using without the recommended preset:

import { defineConfig } from "eslint/config";
import importEsmPlugin from 'eslint-plugin-import-esm';

export default defineConfig([
  {
    plugins: { 'import-esm': importEsmPlugin },
    rules: {
      'import-esm/explicit-extension': ['error', { extension: '.mjs' }]
    }
  }
]);

Rules

💼 Configurations enabled in.
✅ Set in the recommended configuration.
🔧 Automatically fixable by the --fix CLI option.

Name               Description 💼 🔧
explicit-extension Validate if import and export paths have an explicit extension 🔧

Configs

Name
recommended

About

ESLint plugin that enforces imports to follow native ESM resolution.

Resources

Stars

Watchers

Forks

Contributors