CLI toolbox for common scripts for my front-end projects
$ npm install @taoyage/configs --save-dev
or
$ pnpm install @taoyage/configs -D
This can be a very helpful way to make editor integration work for tools like ESLint,babel,prettier,commitlint which require project-based configuration to be present to work.
if we were to do this for prettier, you could create an .prettierrc.js with the contents of
module.exports = require('@taoyage/configs/prettier');
if we were to do this for eslint of typescript react project, you could create an .eslintrc.js with the contents of
module.exports = require('@taoyage/configs/eslint-ts');
create tsconfig.json with the contents of
{
"extends": "@taoyage/configs/shared-tsconfig",
"compilerOptions": {},
"exclude": [],
"include": []
}
if were to do this for commitlint, you could create an .commitlintrc.js with the contents of
module.exports = require('@taoyage/configs/commitlint');
if were to do this for lintstaged, you could create an .lintstagedrc.js with the contents of
module.exports = require('@taoyage/configs/lintstaged');
if were to do this for stylelint, you could create an .stylelintrc.js with the contents of
module.exports = require('@taoyage/configs/stylelint');
if were to do this for postcss, you could create an postcss.config.js with the contents of
module.exports = require('@sk/configs/postcss');
if were to do swc-loader to webpack configure,you could import this swc configuration, this configuration suport typescript program. example of
import swcOptions from '@taoyage/configs/swc-ts';
module: {
rules: [
{
test: /\.ts?x$/,
use: {
loader: 'swc-loader',
options: swcOptions(rootPath, { isDev: false, override: {} }),
},
},
],
},
params | description | type |
---|---|---|
rootPath | tsconfig.json file path | string |
isDev | current is dev or production | bool |
override | swc compilation config | object |
if were todo babel-loader to webpack configure to react, you could create an .babelrc.js with content of
module.exports = {
presets: [['@taoyage/configs/babel']],
};
- eslint config
- tsconfig
- prettier
- commitlint config
- lintstage config
- stylelint config
- swc config
- babel config
- browserslist