Skip to content

aligent/ts-code-standards

Repository files navigation

TS Coding Standards

Standard code quality tooling for projects written in TypeScript.

Usage

Install this package:

  # NPM
  npm install -D @aligent/ts-code-standards
  # Yarn
  yarn add -D @aligent/ts-code-standards
  # PNPM
  pnpm add -D @aligent/ts-code-standards

Copy the .editorconfig from this package into your own project:

  # Assuming your package is installed in `node_modules` folder
  cp node_modules/@aligent/ts-code-standards/.editorconfig ./.editorconfig

Add the following to your prettier.config.js:

  • For ES modules project:

    import { prettierConfig } from '@aligent/ts-code-standards';
    
    export default prettierConfig;
  • For CommonJS project:

    const { prettierConfig } = require('@aligent/ts-code-standards');
    
    module.exports = prettierConfig;

Install the ESLint and TypeScript configs:

General Projects

Add the following to your eslint.config.js:
  • For ES modules project:

    import { eslintConfigs } from '@aligent/ts-code-standards';
    
    export default [...eslintConfigs.base];
  • For CommonJS project:

    const { eslintConfigs } = require('@aligent/ts-code-standards');
    
    module.exports = [...eslintConfigs.base];
Add the following to your tsconfig.json:
{ "extends": "@aligent/ts-code-standards/tsconfigs-base" }

React Projects

Add the following to your eslint.config.js:
  • For ES modules project:

    import { eslintConfigs } from '@aligent/ts-code-standards';
    
    export default [...eslintConfigs.react];
  • For CommonJS project:

    const { eslintConfigs } = require('@aligent/ts-code-standards');
    
    module.exports = [...eslintConfigs.react];
Add the following to your tsconfig.json:
{ "extends": "@aligent/ts-code-standards/tsconfigs-react" }

Notes

  • You'll need to add include, exclude, paths etc. to your tsconfig file. These settings will be project specific.
  • Your project is considered as ES modules project if the type option in the nearest package.json is set to module. Otherwise, it's a CommonJS project. For more information on this, please check CommonJS vs. ES modules in Node.js.
  • For backward compatibility, we also export ./tsconfigs/base.json and ./tsconfigs/react.json. However, you should update to the new syntax when configuring your tsconfig.json when possible.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •