@aligent/ts-code-standards
v4.2.0
Published
Standard code quality tooling for projects written in TypeScript.
Keywords
Readme
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-standardsCopy 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 ./.editorconfigAdd 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;
Add the following to your eslint.config.js:
General Projects
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];
React Projects
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:
General project:
{ "extends": "@aligent/ts-code-standards/tsconfigs-base" }Extend project (general project but requires TypeScript project references features):
{ "extends": "@aligent/ts-code-standards/tsconfigs-extend" }React project:
{ "extends": "@aligent/ts-code-standards/tsconfigs-react" }
Notes
- You'll need to add
include,exclude,pathsetc. to yourtsconfigfile. These settings will be project specific. - Your project is considered as
ES modulesproject if thetypeoption in the nearestpackage.jsonis set tomodule. 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.jsonand./tsconfigs/react.json. However, you should update to the new syntax when configuring yourtsconfig.jsonwhen possible. - The
tsconfigs-extendis the configuration for general projects that require TypeScript project references features to enable incremental builds. This is particular useful for monorepo where we have to manage different packages.
