Skip to content

Instantly share code, notes, and snippets.

@DeathVenom54
Last active October 29, 2021 15:53
Show Gist options
  • Save DeathVenom54/bff006d208e4868ec00ced4d141ab0e3 to your computer and use it in GitHub Desktop.
Save DeathVenom54/bff006d208e4868ec00ced4d141ab0e3 to your computer and use it in GitHub Desktop.
Setting up ESLint Prettier in a Typescript project

Based on https://robertcooper.me/post/using-eslint-and-prettier-in-a-typescript-project

Install dependencies

yarn add eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin prettier eslint-config-prettier eslint-plugin-prettier --dev

Write these files

.eslintrc.js

module.exports = {
  parser: "@typescript-eslint/parser", // Specifies the ESLint parser
  parserOptions: {
    ecmaVersion: 2020, // Allows for the parsing of modern ECMAScript features
    sourceType: "module" // Allows for the use of imports
  },
  extends: [
    "plugin:@typescript-eslint/recommended", // Uses the recommended rules from the @typescript-eslint/eslint-plugin
    "plugin:prettier/recommended" // Enables eslint-plugin-prettier and eslint-config-prettier. This will display prettier errors as ESLint errors. Make sure this is always the last configuration in the extends array.
  ],
  rules: {
    // Place to specify ESLint rules. Can be used to overwrite rules specified from the extended configs
    // e.g. "@typescript-eslint/explicit-function-return-type": "off",
  }
};

.prettierrc.js

module.exports = {
  semi: true,
  trailingComma: "all",
  singleQuote: true,
  printWidth: 120,
  tabWidth: 2
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment