@aligent/ts-code-standards
v5.0.0
Published
Standard code quality tooling for projects written in TypeScript.
Downloads
1,101
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.
