@kitschpatrol/shared-config 5.6.0 → 5.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/bin/cli.js +23 -23
  2. package/package.json +13 -12
  3. package/readme.md +47 -47
package/bin/cli.js CHANGED
@@ -11084,7 +11084,7 @@ var Yargs = YargsFactory(esm_default);
11084
11084
  var yargs_default = Yargs;
11085
11085
 
11086
11086
  // ../../package.json
11087
- var version = "5.6.0";
11087
+ var version = "5.7.0";
11088
11088
 
11089
11089
  // ../../src/execa-utilities.ts
11090
11090
  function isErrorExecaError(error) {
@@ -11975,7 +11975,7 @@ var commandDefinition = {
11975
11975
  description: "Kitschpatrol's CSpell shared configuration tools. (Automated fixes are handled by ESLint.)",
11976
11976
  logColor: "cyan",
11977
11977
  logPrefix: "[CSpell]",
11978
- name: "kpi-cspell",
11978
+ name: "ksc-cspell",
11979
11979
  order: 6
11980
11980
  };
11981
11981
 
@@ -12045,7 +12045,7 @@ var commandDefinition2 = {
12045
12045
  description: "Kitschpatrol's ESLint shared configuration tools.",
12046
12046
  logColor: "magenta",
12047
12047
  logPrefix: `[ESLint]`,
12048
- name: "kpi-eslint",
12048
+ name: "ksc-eslint",
12049
12049
  order: 4
12050
12050
  };
12051
12051
 
@@ -12068,17 +12068,17 @@ var sharedKnipConfig = {
12068
12068
  "prettier.config.{js,mjs,cjs,ts,mts,cts}",
12069
12069
  "stylelint.config.{js,mjs,cjs,ts,mts,cts}"
12070
12070
  ],
12071
- // Allow calling of individual kpi binaries...
12071
+ // Allow calling of individual ksc binaries...
12072
12072
  ignoreBinaries: [
12073
- "kpi-repo",
12074
- "kpi-mdat",
12075
- "kpi-typescript",
12076
- "kpi-eslint",
12077
- "kpi-stylelint",
12078
- "kpi-cspell",
12079
- "kpi-knip",
12080
- "kpi-remark",
12081
- "kpi-prettier",
12073
+ "ksc-repo",
12074
+ "ksc-mdat",
12075
+ "ksc-typescript",
12076
+ "ksc-eslint",
12077
+ "ksc-stylelint",
12078
+ "ksc-cspell",
12079
+ "ksc-knip",
12080
+ "ksc-remark",
12081
+ "ksc-prettier",
12082
12082
  // 1Password CLI, typically a global install...
12083
12083
  "op",
12084
12084
  // GitHub CLI, typically a global install...
@@ -12128,8 +12128,8 @@ function getKnipPackageJsonObject() {
12128
12128
  var commandDefinition3 = {
12129
12129
  commands: {
12130
12130
  // In practice, Knip's auto-fix behavior is too dangerous for most projects.
12131
- // Since kpi doesn't currently have per-tool configuration options, we'll
12132
- // just disable `kpi-knip fix` for now.
12131
+ // Since ksc doesn't currently have per-tool configuration options, we'll
12132
+ // just disable `ksc-knip fix` for now.
12133
12133
  //
12134
12134
  // fix: {
12135
12135
  // commands: [
@@ -12181,7 +12181,7 @@ var commandDefinition3 = {
12181
12181
  description: "Kitschpatrol's Knip shared configuration tools.",
12182
12182
  logColor: "cyan",
12183
12183
  logPrefix: "[Knip]",
12184
- name: "kpi-knip",
12184
+ name: "ksc-knip",
12185
12185
  order: 7
12186
12186
  };
12187
12187
 
@@ -12262,7 +12262,7 @@ var commandDefinition4 = {
12262
12262
  description: "Kitschpatrol's Mdat shared configuration tools.",
12263
12263
  logColor: "green",
12264
12264
  logPrefix: "[Mdat Config]",
12265
- name: "kpi-mdat",
12265
+ name: "ksc-mdat",
12266
12266
  order: 2
12267
12267
  };
12268
12268
 
@@ -12326,7 +12326,7 @@ var commandDefinition5 = {
12326
12326
  description: "Kitschpatrol's Prettier shared configuration tools.",
12327
12327
  logColor: "blue",
12328
12328
  logPrefix: "[Prettier]",
12329
- name: "kpi-prettier",
12329
+ name: "ksc-prettier",
12330
12330
  order: 9
12331
12331
  };
12332
12332
 
@@ -12352,7 +12352,7 @@ var commandDefinition6 = {
12352
12352
  description: "Kitschpatrol's Remark and Remark Lint shared configuration tools. (Actual linting and fixing is managed through @kitschpatrol/eslint-config.)",
12353
12353
  logColor: "blue",
12354
12354
  logPrefix: "[remarklint]",
12355
- name: "kpi-remark",
12355
+ name: "ksc-remark",
12356
12356
  order: 8
12357
12357
  };
12358
12358
 
@@ -12977,7 +12977,7 @@ var commandDefinition7 = {
12977
12977
  description: "Kitschpatrol's repository-related shared configuration tools.",
12978
12978
  logColor: "gray",
12979
12979
  logPrefix: "[Repo Config]",
12980
- name: "kpi-repo",
12980
+ name: "ksc-repo",
12981
12981
  order: 1
12982
12982
  };
12983
12983
 
@@ -13080,7 +13080,7 @@ var commandDefinition8 = {
13080
13080
  description: "Kitschpatrol's Stylelint shared configuration tools.",
13081
13081
  logColor: "greenBright",
13082
13082
  logPrefix: "[Stylelint]",
13083
- name: "kpi-stylelint",
13083
+ name: "ksc-stylelint",
13084
13084
  order: 5
13085
13085
  };
13086
13086
 
@@ -13145,7 +13145,7 @@ var commandDefinition9 = {
13145
13145
  description: "Kitschpatrol's TypeScript shared configuration tools.",
13146
13146
  logColor: "blueBright",
13147
13147
  logPrefix: "[TypeScript Config]",
13148
- name: "kpi-typescript",
13148
+ name: "ksc-typescript",
13149
13149
  order: 3
13150
13150
  };
13151
13151
 
@@ -13209,7 +13209,7 @@ var commandDefinition10 = {
13209
13209
  description: "Run aggregated @kitschpatrol/shared-config commands.",
13210
13210
  logColor: "yellow",
13211
13211
  logPrefix: "\u{1F52C}",
13212
- name: "kpi",
13212
+ name: "ksc",
13213
13213
  order: 0,
13214
13214
  showSummary: true,
13215
13215
  verbose: true
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kitschpatrol/shared-config",
3
- "version": "5.6.0",
3
+ "version": "5.7.0",
4
4
  "description": "A collection of shared configurations, linters, and formatting tools for TypeScript projects. All managed as a single dependency, and invoked via a single CLI command.",
5
5
  "keywords": [
6
6
  "shared-config",
@@ -13,7 +13,7 @@
13
13
  "cspell",
14
14
  "mdat",
15
15
  "cli",
16
- "kpi"
16
+ "ksc"
17
17
  ],
18
18
  "homepage": "https://github.com/kitschpatrol/shared-config",
19
19
  "bugs": "https://github.com/kitschpatrol/shared-config/issues",
@@ -30,7 +30,8 @@
30
30
  },
31
31
  "type": "module",
32
32
  "bin": {
33
- "kpi": "bin/cli.js"
33
+ "kpi": "bin/cli.js",
34
+ "ksc": "bin/cli.js"
34
35
  },
35
36
  "files": [
36
37
  "bin/*"
@@ -43,15 +44,15 @@
43
44
  "find-workspaces": "^0.3.1",
44
45
  "fs-extra": "^11.3.1",
45
46
  "prettier": "^3.6.2",
46
- "@kitschpatrol/mdat-config": "5.6.0",
47
- "@kitschpatrol/cspell-config": "5.6.0",
48
- "@kitschpatrol/eslint-config": "5.6.0",
49
- "@kitschpatrol/prettier-config": "5.6.0",
50
- "@kitschpatrol/knip-config": "5.6.0",
51
- "@kitschpatrol/repo-config": "5.6.0",
52
- "@kitschpatrol/remark-config": "5.6.0",
53
- "@kitschpatrol/stylelint-config": "5.6.0",
54
- "@kitschpatrol/typescript-config": "5.6.0"
47
+ "@kitschpatrol/cspell-config": "5.7.0",
48
+ "@kitschpatrol/knip-config": "5.7.0",
49
+ "@kitschpatrol/eslint-config": "5.7.0",
50
+ "@kitschpatrol/remark-config": "5.7.0",
51
+ "@kitschpatrol/repo-config": "5.7.0",
52
+ "@kitschpatrol/prettier-config": "5.7.0",
53
+ "@kitschpatrol/typescript-config": "5.7.0",
54
+ "@kitschpatrol/mdat-config": "5.7.0",
55
+ "@kitschpatrol/stylelint-config": "5.7.0"
55
56
  },
56
57
  "devDependencies": {
57
58
  "globby": "^14.1.0",
package/readme.md CHANGED
@@ -35,15 +35,15 @@
35
35
 
36
36
  ## Overview
37
37
 
38
- This project attempts to consolidate most of the configuration and tooling shared by my open-source and internal TypeScript / Node based projects into a single dependency with a single CLI meta-command to lint and fix issues.
38
+ This project consolidates most of the configuration and tooling shared by my open-source and internal TypeScript-based projects into a single dependency with a single CLI meta-command to lint and fix issues.
39
39
 
40
- By installing `@kitschpatrol/shared-config` and then running `kpi`, you can run a half-dozen pre-configured code quality and linting tools in one shot. This spares you from cluttering your project's `devDependencies` with packages tangential to the task at hand.
40
+ By installing `@kitschpatrol/shared-config` and then running `ksc`, you can run a half-dozen pre-configured code quality and linting tools in one shot. This spares you from cluttering your project's `devDependencies` with packages tangential to the task at hand.
41
41
 
42
- If you don't plan to customize tool configurations, `@kitschpatrol/shared-config init` exposes an option to store references to each tool's shared configuration in your `package.json` instead of in files in your project root (at least where permitted by the tool). This can save a bit of file clutter in your project's root directory, at the expense of the immediate discoverability of the tools.
42
+ If you don't plan to customize tool configurations, `ksc init` exposes an option to store references to each tool's shared configuration in your `package.json` instead of in files in your project root (at least where permitted by the tool). This can save a bit of file clutter in your project's root directory, at the expense of the immediate discoverability of the tools.
43
43
 
44
44
  In addition, each tool exports a typed configuration factory function to simplify specifying and extending the default configuration.
45
45
 
46
- The command name `kpi` might stand for "Kitschpatrol Project Inspector", or the more McKinseyan "Key Performance Indicators".
46
+ The command name `ksc` is just an initialism for "Kitschpatrol Shared Configuration".
47
47
 
48
48
  ### Tools
49
49
 
@@ -67,51 +67,51 @@ This particular readme is for the [`@kitschpatrol/shared-config`](https://www.np
67
67
 
68
68
  #### Primary package
69
69
 
70
- - [`@kitschpatrol/shared-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/shared-config/readme.md) (`kpi` command)
70
+ - [`@kitschpatrol/shared-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/shared-config/readme.md) (`ksc` command)
71
71
 
72
72
  #### Sub-packages
73
73
 
74
- - [`@kitschpatrol/cspell-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/cspell-config/readme.md) (`kpi-cspell` command)
75
- - [`@kitschpatrol/eslint-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/eslint-config/readme.md) (`kpi-eslint` command)
76
- - [`@kitschpatrol/knip-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/knip-config/readme.md) (`kpi-knip` command)
77
- - [`@kitschpatrol/mdat-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/mdat-config/readme.md) (`kpi-mdat` command)
78
- - [`@kitschpatrol/prettier-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/prettier-config/readme.md) (`kpi-prettier` command)
79
- - [`@kitschpatrol/remark-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/remark-config/readme.md) (`kpi-remark` command)
80
- - [`@kitschpatrol/repo-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/repo-config/readme.md) (`kpi-repo` command)
81
- - [`@kitschpatrol/stylelint-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/stylelint-config/readme.md) (`kpi-stylelint` command)
82
- - [`@kitschpatrol/typescript-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/typescript-config/readme.md) (`kpi-typescript` command)
74
+ - [`@kitschpatrol/cspell-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/cspell-config/readme.md) (`ksc-cspell` command)
75
+ - [`@kitschpatrol/eslint-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/eslint-config/readme.md) (`ksc-eslint` command)
76
+ - [`@kitschpatrol/knip-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/knip-config/readme.md) (`ksc-knip` command)
77
+ - [`@kitschpatrol/mdat-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/mdat-config/readme.md) (`ksc-mdat` command)
78
+ - [`@kitschpatrol/prettier-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/prettier-config/readme.md) (`ksc-prettier` command)
79
+ - [`@kitschpatrol/remark-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/remark-config/readme.md) (`ksc-remark` command)
80
+ - [`@kitschpatrol/repo-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/repo-config/readme.md) (`ksc-repo` command)
81
+ - [`@kitschpatrol/stylelint-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/stylelint-config/readme.md) (`ksc-stylelint` command)
82
+ - [`@kitschpatrol/typescript-config`](https://github.com/kitschpatrol/shared-config/blob/main/packages/typescript-config/readme.md) (`ksc-typescript` command)
83
83
 
84
84
  > [!IMPORTANT]
85
85
  >
86
86
  > Any of these packages may be installed and run on their own via CLI if desired. However, in general, the idea is to use `@kitschpatrol/shared-config` to easily run them all simultaneously over a repo with a single command with options to either check or (where possible) fix problems, with output aggregated into a single report.
87
87
 
88
- Running `kpi <command>` calls the same command across the entire collection of sub-packages.
88
+ Running `ksc <command>` calls the same command across the entire collection of sub-packages.
89
89
 
90
90
  So assuming you've installed `@kitschpatrol/shared-config`...
91
91
 
92
92
  Running:
93
93
 
94
94
  ```sh
95
- kpi init
95
+ ksc init
96
96
  ```
97
97
 
98
98
  Is the same as running:
99
99
 
100
100
  ```sh
101
- kpi-repo init
102
- kpi-mdat init
103
- kpi-typescript init
104
- kpi-eslint init
105
- kpi-stylelint init
106
- kpi-cspell init
107
- kpi-knip init
108
- kpi-remark init
109
- kpi-prettier init
101
+ ksc-repo init
102
+ ksc-mdat init
103
+ ksc-typescript init
104
+ ksc-eslint init
105
+ ksc-stylelint init
106
+ ksc-cspell init
107
+ ksc-knip init
108
+ ksc-remark init
109
+ ksc-prettier init
110
110
  ```
111
111
 
112
112
  _(Sub-commands are always executed in the above order.)_
113
113
 
114
- The top-level `kpi` command also takes care of some nuances in terms of _which_ sub-packages implement _which_ commands, and which subcommands take arguments.
114
+ The top-level `ksc` command also takes care of some nuances in terms of _which_ sub-packages implement _which_ commands, and which subcommands take arguments.
115
115
 
116
116
  ## Getting started
117
117
 
@@ -126,19 +126,19 @@ The top-level `kpi` command also takes care of some nuances in terms of _which_
126
126
  Bootstrap a new project and open in VS Code:
127
127
 
128
128
  ```sh
129
- git init && pnpm init && pnpm pkg set type="module" && pnpm dlx @kitschpatrol/repo-config init && pnpm add -D @kitschpatrol/shared-config && pnpm kpi init && pnpm i && code .
129
+ git init && pnpm init && pnpm pkg set type="module" && pnpm dlx @kitschpatrol/repo-config init && pnpm add -D @kitschpatrol/shared-config && pnpm ksc init && pnpm i && code .
130
130
  ```
131
131
 
132
- Note that `kpi init` takes an optional `--location package` flag will put as much configuration in your `package.json` as possible instead of creating discrete config files in your project root for each tool. Putting config in `package.json` can save some clutter, but can make it clunkier to extend or customize configurations.
132
+ Note that `ksc init` takes an optional `--location package` flag will put as much configuration in your `package.json` as possible instead of creating discrete config files in your project root for each tool. Putting config in `package.json` can save some clutter, but can make it clunkier to extend or customize configurations.
133
133
 
134
- At any point, you can call `kpi init` again with the `--location package` or `--location file` flag to reinitialize your configuration files in one place or the other and restore the default configurations.
134
+ At any point, you can call `ksc init` again with the `--location package` or `--location file` flag to reinitialize your configuration files in one place or the other and restore the default configurations.
135
135
 
136
136
  #### Quick add to an existing project:
137
137
 
138
138
  This might overwrite certain config files, so commit first:
139
139
 
140
140
  ```sh
141
- pnpm dlx @kitschpatrol/repo-config init && pnpm i && pnpm add -D @kitschpatrol/shared-config && pnpm kpi init
141
+ pnpm dlx @kitschpatrol/repo-config init && pnpm i && pnpm add -D @kitschpatrol/shared-config && pnpm ksc init
142
142
  ```
143
143
 
144
144
  #### Step-by-step:
@@ -158,13 +158,13 @@ pnpm dlx @kitschpatrol/repo-config init && pnpm i && pnpm add -D @kitschpatrol/s
158
158
  3. Add default config files for all the tools to your project root:
159
159
 
160
160
  ```sh
161
- pnpm kpi init
161
+ pnpm ksc init
162
162
  ```
163
163
 
164
164
  Or, if you don't plan to customize tool configurations, you might want to put as much config as possible under tool-specific keys in 'package.json':
165
165
 
166
166
  ```sh
167
- pnpm kpi init --location package
167
+ pnpm ksc init --location package
168
168
  ```
169
169
 
170
170
  4. Add helper scripts to your `package.json`:
@@ -174,8 +174,8 @@ pnpm dlx @kitschpatrol/repo-config init && pnpm i && pnpm add -D @kitschpatrol/s
174
174
  ```json
175
175
  {
176
176
  "scripts": {
177
- "fix": "kpi fix",
178
- "lint": "kpi lint"
177
+ "fix": "ksc fix",
178
+ "lint": "ksc lint"
179
179
  }
180
180
  }
181
181
  ```
@@ -208,18 +208,18 @@ pnpm run fix
208
208
 
209
209
  ### CLI
210
210
 
211
- <!-- cli-help cliCommand: 'kpi' -->
211
+ <!-- cli-help cliCommand: 'ksc' -->
212
212
 
213
- #### Command: `kpi`
213
+ #### Command: `ksc`
214
214
 
215
215
  Run aggregated @kitschpatrol/shared-config commands.
216
216
 
217
- This section lists top-level commands for `kpi`.
217
+ This section lists top-level commands for `ksc`.
218
218
 
219
219
  Usage:
220
220
 
221
221
  ```txt
222
- kpi <command>
222
+ ksc <command>
223
223
  ```
224
224
 
225
225
  | Command | Argument | Description |
@@ -236,14 +236,14 @@ kpi <command>
236
236
 
237
237
  _See the sections below for more information on each subcommand._
238
238
 
239
- #### Subcommand: `kpi init`
239
+ #### Subcommand: `ksc init`
240
240
 
241
241
  Initialize configuration files for the entire suite of @kitschpatrol/shared-config tools. Will use option flags where possible if provided, but some of the invoked tools will ignore them.
242
242
 
243
243
  Usage:
244
244
 
245
245
  ```txt
246
- kpi init
246
+ ksc init
247
247
  ```
248
248
 
249
249
  | Option | Description | Type | Default |
@@ -252,14 +252,14 @@ kpi init
252
252
  | `--help`<br>`-h` | Show help | `boolean` | |
253
253
  | `--version`<br>`-v` | Show version number | `boolean` | |
254
254
 
255
- #### Subcommand: `kpi lint`
255
+ #### Subcommand: `ksc lint`
256
256
 
257
257
  Lint your project with multiple tools in one go. Will use file arguments / globs where possible if provided, but some of the invoked tools only operate at the package-scope.
258
258
 
259
259
  Usage:
260
260
 
261
261
  ```txt
262
- kpi lint [files..]
262
+ ksc lint [files..]
263
263
  ```
264
264
 
265
265
  | Positional Argument | Description | Type | Default |
@@ -271,14 +271,14 @@ kpi lint [files..]
271
271
  | `--help`<br>`-h` | Show help | `boolean` |
272
272
  | `--version`<br>`-v` | Show version number | `boolean` |
273
273
 
274
- #### Subcommand: `kpi fix`
274
+ #### Subcommand: `ksc fix`
275
275
 
276
276
  Fix your project with multiple tools in one go. Will use file arguments / globs where possible if provided, but some of the invoked tools only operate at the package-scope.
277
277
 
278
278
  Usage:
279
279
 
280
280
  ```txt
281
- kpi fix [files..]
281
+ ksc fix [files..]
282
282
  ```
283
283
 
284
284
  | Positional Argument | Description | Type | Default |
@@ -290,14 +290,14 @@ kpi fix [files..]
290
290
  | `--help`<br>`-h` | Show help | `boolean` |
291
291
  | `--version`<br>`-v` | Show version number | `boolean` |
292
292
 
293
- #### Subcommand: `kpi print-config`
293
+ #### Subcommand: `ksc print-config`
294
294
 
295
295
  Print aggregated tool configuration data. Will use file arguments / globs where possible if provided, but some of the invoked tools only operate at the package-scope.
296
296
 
297
297
  Usage:
298
298
 
299
299
  ```txt
300
- kpi print-config [file]
300
+ ksc print-config [file]
301
301
  ```
302
302
 
303
303
  | Positional Argument | Description | Type |
@@ -311,7 +311,7 @@ kpi print-config [file]
311
311
 
312
312
  <!-- /cli-help -->
313
313
 
314
- Recall that the `@kitschpatrol/shared-config` package aggregates integration and invocation of the other tool-specific packages in this monorepo. Running a cli command on `kpi` effectively runs the same command against all the tool-specific packages.
314
+ Recall that the `@kitschpatrol/shared-config` package aggregates integration and invocation of the other tool-specific packages in this monorepo. Running a cli command on `ksc` effectively runs the same command against all the tool-specific packages.
315
315
 
316
316
  ## Implementation notes
317
317