@kitschpatrol/create-project 1.2.0 → 1.2.2

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 (33) hide show
  1. package/dist/index.js +3 -5
  2. package/package.json +10 -10
  3. package/readme.md +11 -25
  4. package/templates/cli/.npmrc +0 -12
  5. package/templates/cli/.vscode/settings.json +30 -30
  6. package/templates/cli/package.json +7 -10
  7. package/templates/cli/pnpm-workspace.yaml +14 -0
  8. package/templates/cli+library/.npmrc +0 -12
  9. package/templates/cli+library/.vscode/settings.json +30 -30
  10. package/templates/cli+library/package.json +7 -10
  11. package/templates/cli+library/pnpm-workspace.yaml +14 -0
  12. package/templates/electron/.npmrc +0 -12
  13. package/templates/electron/.vscode/settings.json +30 -30
  14. package/templates/electron/package.json +5 -17
  15. package/templates/electron/pnpm-workspace.yaml +21 -0
  16. package/templates/electron/src/style.css +3 -4
  17. package/templates/library/.npmrc +0 -12
  18. package/templates/library/.vscode/settings.json +30 -30
  19. package/templates/library/package.json +5 -8
  20. package/templates/library/pnpm-workspace.yaml +14 -0
  21. package/templates/minimal/.npmrc +0 -12
  22. package/templates/minimal/.vscode/settings.json +30 -30
  23. package/templates/minimal/package.json +5 -5
  24. package/templates/minimal/pnpm-workspace.yaml +14 -0
  25. package/templates/unplugin/.npmrc +0 -12
  26. package/templates/unplugin/.vscode/settings.json +30 -30
  27. package/templates/unplugin/package.json +7 -10
  28. package/templates/unplugin/pnpm-workspace.yaml +14 -0
  29. package/templates/web/.npmrc +0 -12
  30. package/templates/web/.vscode/settings.json +30 -30
  31. package/templates/web/package.json +5 -10
  32. package/templates/web/pnpm-workspace.yaml +17 -0
  33. package/templates/web/src/style.css +3 -4
package/dist/index.js CHANGED
@@ -3392,7 +3392,6 @@ ZodNaN.create = (params) => {
3392
3392
  ...processCreateParams(params)
3393
3393
  });
3394
3394
  };
3395
- const BRAND = Symbol("zod_brand");
3396
3395
  var ZodBranded = class extends ZodType {
3397
3396
  _parse(input) {
3398
3397
  const { ctx } = this._processInputParams(input);
@@ -3573,12 +3572,11 @@ var template_default = createTemplate({
3573
3572
  "author-email": stringType().default("eric@ericmika.com").describe("The email of the author"),
3574
3573
  "author-url": stringType().default("https://ericmika.com").describe("The URL of the author"),
3575
3574
  "cli-command-name": stringType().default("new-project").describe("CLI command name (if applicable)"),
3576
- "github-owner": stringType().default("kitschpatrol").describe("The owner of the future repository"),
3577
- "github-repository": stringType().default(`new-project`).describe("The name of the future repository / package"),
3575
+ "github-owner": stringType().default("kitschpatrol").describe("The owner of the repository"),
3576
+ "github-repository": stringType().default(`new-project`).describe("The name of the repository / package"),
3578
3577
  "npm-auth-command": stringType().default("op read 'op://Personal/npm/token'").describe("A shell command that sets the NPM_AUTH_TOKEN env variable with a granular token for publishing to npm")
3579
3578
  },
3580
- async produce(params) {
3581
- const { options } = params;
3579
+ async produce({ options }) {
3582
3580
  const extraOptions = {
3583
3581
  ...options,
3584
3582
  year: (/* @__PURE__ */ new Date()).getFullYear()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kitschpatrol/create-project",
3
- "version": "1.2.0",
3
+ "version": "1.2.2",
4
4
  "description": "Kitschpatrol's TypeScript project templates.",
5
5
  "keywords": [
6
6
  "cli",
@@ -28,19 +28,19 @@
28
28
  "templates/**/.npmrc"
29
29
  ],
30
30
  "dependencies": {
31
- "bingo": "^0.5.16",
32
- "bingo-fs": "^0.5.5",
31
+ "bingo": "^0.9.2",
32
+ "bingo-fs": "^0.5.6",
33
33
  "bingo-handlebars": "^0.1.0"
34
34
  },
35
35
  "devDependencies": {
36
- "@kitschpatrol/shared-config": "^5.8.3",
37
- "@types/node": "~20.19.24",
38
- "bumpp": "^10.3.1",
39
- "mdat": "^1.2.3",
40
- "taze": "^19.9.0",
41
- "tsdown": "^0.16.1",
36
+ "@kitschpatrol/shared-config": "^5.10.0",
37
+ "@types/node": "~20.19.27",
38
+ "bumpp": "^10.3.2",
39
+ "mdat": "^1.3.3",
40
+ "taze": "^19.9.2",
41
+ "tsdown": "^0.18.3",
42
42
  "typescript": "~5.9.3",
43
- "vitest": "^4.0.8",
43
+ "vitest": "^4.0.16",
44
44
  "zod": "^3.25.76"
45
45
  },
46
46
  "engines": {
package/readme.md CHANGED
@@ -23,7 +23,7 @@
23
23
 
24
24
  This repository contains very basic starter templates for TypeScript projects integrating [@kitschpatrol/shared-config](https://github.com/kitschpatrol/shared-config).
25
25
 
26
- The lint tools and rules that come along with [@kitschpatrol/shared-config](https://github.com/kitschpatrol/shared-config) are quite opinionated and draconian, and won't be to everyone's taste.
26
+ The lint tools and rules that come along with [@kitschpatrol/shared-config](https://github.com/kitschpatrol/shared-config) are opinionated and draconian, and won't be to everyone's taste.
27
27
 
28
28
  The templates use [tsdown](https://tsdown.dev/) for building TypeScript libraries and Node-based CLI tools, and [Vite](https://vite.dev/) for web projects. [Bingo](https://www.create.bingo/) is used for the project templating system itself.
29
29
 
@@ -47,30 +47,31 @@ pnpm create @kitschpatrol/project@latest
47
47
  Bingo template options:
48
48
 
49
49
  --directory (string): What local directory path to run under
50
- npx new-project --directory my-fancy-project
50
+ npx @kitschpatrol/create-project --directory my-fancy-project
51
51
 
52
52
  --help (string): Prints help text.
53
- npx new-project --help
53
+ npx @kitschpatrol/create-project --help
54
54
 
55
55
  --mode ("setup" | "transition"): Which mode to run in.
56
- npx new-project --mode setup
57
- npx new-project --mode transition
56
+ npx @kitschpatrol/create-project --mode setup
57
+ npx @kitschpatrol/create-project --mode transition
58
58
 
59
59
  --offline (boolean): Whether to run in an "offline" mode that skips network requests.
60
- npx new-project --offline
60
+ npx @kitschpatrol/create-project --offline
61
61
 
62
62
  --version (boolean): Prints package versions.
63
- npx new-project --version
63
+ npx @kitschpatrol/create-project --version
64
64
 
65
- Kitschpatrol Create Project options:
65
+ Create Kitschpatrol Project options:
66
66
 
67
67
  --type (enum): The type of project to create.
68
68
  --author-name (string): The name of the author.
69
69
  --author-email (string): The email of the author.
70
70
  --author-url (string): The URL of the author.
71
71
  --cli-command-name (string): CLI command name (if applicable).
72
- --github-owner (string): The owner of the future repository.
73
- --github-repository (string): The name of the future repository / package.
72
+ --github-owner (string): The owner of the repository.
73
+ --github-repository (string): The name of the repository / package.
74
+ --npm-auth-command (string): A shell command that sets the NPM_AUTH_TOKEN env variable with a granular token for publishing to npm.
74
75
  ```
75
76
 
76
77
  ## Development Notes
@@ -102,18 +103,3 @@ Thanks to [Josh Goldberg](https://www.joshuakgoldberg.com/) for creating the [Bi
102
103
  [MIT](license.txt) © Eric Mika
103
104
 
104
105
  <!-- /license -->
105
-
106
- ---
107
-
108
- Test scratch:
109
-
110
- Build failures:
111
-
112
- - electron
113
-
114
- Lint failures:
115
-
116
- - electron
117
- - cli+library
118
- - cli
119
- - library
@@ -1,16 +1,4 @@
1
1
  publish-branch=main
2
2
 
3
- # Required for using @kitschpatrol/shared-config and the ksc command with pnpm
4
- public-hoist-pattern[]=@kitschpatrol/repo-config
5
- public-hoist-pattern[]=@kitschpatrol/typescript-config
6
- public-hoist-pattern[]=case-police
7
- public-hoist-pattern[]=*cspell*
8
- public-hoist-pattern[]=*eslint*
9
- public-hoist-pattern[]=*knip*
10
- public-hoist-pattern[]=*mdat*
11
- public-hoist-pattern[]=*prettier*
12
- public-hoist-pattern[]=*remark*
13
- public-hoist-pattern[]=*stylelint*
14
-
15
3
  # Required for automated local publishing
16
4
  //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}
@@ -1,21 +1,30 @@
1
1
  {
2
- "explorer.fileNesting.enabled": true,
3
- "explorer.fileNesting.expand": false,
4
- "explorer.fileNesting.patterns": {
5
- "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
6
- "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
7
- ".env": ".env.*",
8
- "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
9
- "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
2
+ "[astro]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
4
  },
11
- "typescript.enablePromptUseWorkspaceTsdk": true,
12
- "typescript.tsdk": "node_modules/typescript/lib",
5
+ "[gitignore]": {
6
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
7
+ },
8
+ "[ruby]": {
9
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
+ },
11
+ "[shellscript]": {
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
13
+ },
14
+ "[svelte]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
16
+ },
17
+ "cSpell.enabled": true,
18
+ "cSpell.workspaceRootPath": ".",
13
19
  "editor.codeActionsOnSave": {
14
20
  "source.fixAll": "explicit",
15
21
  "source.organizeImports": "never"
16
22
  },
23
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
24
+ "editor.formatOnSave": true,
17
25
  "eslint.enable": true,
18
26
  "eslint.runtime": "node",
27
+ "eslint.useFlatConfig": true,
19
28
  "eslint.validate": [
20
29
  "astro",
21
30
  "html",
@@ -33,26 +42,15 @@
33
42
  "xml",
34
43
  "yaml"
35
44
  ],
36
- "eslint.useFlatConfig": true,
37
- "cSpell.enabled": true,
38
- "cSpell.workspaceRootPath": ".",
39
- "[astro]": {
40
- "editor.defaultFormatter": "esbenp.prettier-vscode"
41
- },
42
- "[gitignore]": {
43
- "editor.defaultFormatter": "esbenp.prettier-vscode"
44
- },
45
- "[ruby]": {
46
- "editor.defaultFormatter": "esbenp.prettier-vscode"
47
- },
48
- "[shellscript]": {
49
- "editor.defaultFormatter": "esbenp.prettier-vscode"
50
- },
51
- "[svelte]": {
52
- "editor.defaultFormatter": "esbenp.prettier-vscode"
45
+ "explorer.fileNesting.enabled": true,
46
+ "explorer.fileNesting.expand": false,
47
+ "explorer.fileNesting.patterns": {
48
+ ".env": ".env.*, .template.env",
49
+ "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
50
+ "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
51
+ "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
52
+ "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
53
53
  },
54
- "editor.defaultFormatter": "esbenp.prettier-vscode",
55
- "editor.formatOnSave": true,
56
54
  "prettier.documentSelectors": [
57
55
  "**/.eslintignore",
58
56
  "**/.node-version",
@@ -64,5 +62,7 @@
64
62
  ],
65
63
  "prettier.enable": true,
66
64
  "stylelint.enable": true,
67
- "stylelint.validate": ["css", "html", "svelte", "astro"]
65
+ "stylelint.validate": ["css", "html", "svelte", "astro"],
66
+ "typescript.enablePromptUseWorkspaceTsdk": true,
67
+ "typescript.tsdk": "node_modules/typescript/lib"
68
68
  }
@@ -34,23 +34,20 @@
34
34
  "test": "echo \"Error: no test specified\" && exit 1"
35
35
  },
36
36
  "dependencies": {
37
- "@types/node": "~20.19.24",
38
- "@types/yargs": "^17.0.34",
37
+ "@types/node": "~20.19.27",
38
+ "@types/yargs": "^17.0.35",
39
39
  "lognow": "^0.3.2",
40
40
  "yargs": "^18.0.0"
41
41
  },
42
42
  "devDependencies": {
43
- "@kitschpatrol/shared-config": "^5.8.3",
44
- "bumpp": "^10.3.1",
45
- "mdat-plugin-cli-help": "^1.0.2",
46
- "tsdown": "^0.16.1",
43
+ "@kitschpatrol/shared-config": "^5.10.0",
44
+ "bumpp": "^10.3.2",
45
+ "mdat-plugin-cli-help": "^1.0.4",
46
+ "tsdown": "^0.18.3",
47
47
  "typescript": "~5.9.3"
48
48
  },
49
- "packageManager": "pnpm@10.20.0",
49
+ "packageManager": "pnpm@10.26.2",
50
50
  "engines": {
51
51
  "node": ">=20.19.0"
52
- },
53
- "publishConfig": {
54
- "access": "public"
55
52
  }
56
53
  }
@@ -1,4 +1,18 @@
1
+ # Required by @kitschpatrol/shared-config
2
+
1
3
  onlyBuiltDependencies:
2
4
  - esbuild
3
5
  - puppeteer
4
6
  - unrs-resolver
7
+
8
+ publicHoistPattern:
9
+ - '@kitschpatrol/repo-config'
10
+ - '@kitschpatrol/typescript-config'
11
+ - 'case-police'
12
+ - '*cspell*'
13
+ - '*eslint*'
14
+ - '*knip*'
15
+ - '*mdat*'
16
+ - '*prettier*'
17
+ - '*remark*'
18
+ - '*stylelint*'
@@ -1,16 +1,4 @@
1
1
  publish-branch=main
2
2
 
3
- # Required for using @kitschpatrol/shared-config and the ksc command with pnpm
4
- public-hoist-pattern[]=@kitschpatrol/repo-config
5
- public-hoist-pattern[]=@kitschpatrol/typescript-config
6
- public-hoist-pattern[]=case-police
7
- public-hoist-pattern[]=*cspell*
8
- public-hoist-pattern[]=*eslint*
9
- public-hoist-pattern[]=*knip*
10
- public-hoist-pattern[]=*mdat*
11
- public-hoist-pattern[]=*prettier*
12
- public-hoist-pattern[]=*remark*
13
- public-hoist-pattern[]=*stylelint*
14
-
15
3
  # Required for automated local publishing
16
4
  //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}
@@ -1,21 +1,30 @@
1
1
  {
2
- "explorer.fileNesting.enabled": true,
3
- "explorer.fileNesting.expand": false,
4
- "explorer.fileNesting.patterns": {
5
- "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
6
- "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
7
- ".env": ".env.*",
8
- "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
9
- "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
2
+ "[astro]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
4
  },
11
- "typescript.enablePromptUseWorkspaceTsdk": true,
12
- "typescript.tsdk": "node_modules/typescript/lib",
5
+ "[gitignore]": {
6
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
7
+ },
8
+ "[ruby]": {
9
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
+ },
11
+ "[shellscript]": {
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
13
+ },
14
+ "[svelte]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
16
+ },
17
+ "cSpell.enabled": true,
18
+ "cSpell.workspaceRootPath": ".",
13
19
  "editor.codeActionsOnSave": {
14
20
  "source.fixAll": "explicit",
15
21
  "source.organizeImports": "never"
16
22
  },
23
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
24
+ "editor.formatOnSave": true,
17
25
  "eslint.enable": true,
18
26
  "eslint.runtime": "node",
27
+ "eslint.useFlatConfig": true,
19
28
  "eslint.validate": [
20
29
  "astro",
21
30
  "html",
@@ -33,26 +42,15 @@
33
42
  "xml",
34
43
  "yaml"
35
44
  ],
36
- "eslint.useFlatConfig": true,
37
- "cSpell.enabled": true,
38
- "cSpell.workspaceRootPath": ".",
39
- "[astro]": {
40
- "editor.defaultFormatter": "esbenp.prettier-vscode"
41
- },
42
- "[gitignore]": {
43
- "editor.defaultFormatter": "esbenp.prettier-vscode"
44
- },
45
- "[ruby]": {
46
- "editor.defaultFormatter": "esbenp.prettier-vscode"
47
- },
48
- "[shellscript]": {
49
- "editor.defaultFormatter": "esbenp.prettier-vscode"
50
- },
51
- "[svelte]": {
52
- "editor.defaultFormatter": "esbenp.prettier-vscode"
45
+ "explorer.fileNesting.enabled": true,
46
+ "explorer.fileNesting.expand": false,
47
+ "explorer.fileNesting.patterns": {
48
+ ".env": ".env.*, .template.env",
49
+ "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
50
+ "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
51
+ "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
52
+ "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
53
53
  },
54
- "editor.defaultFormatter": "esbenp.prettier-vscode",
55
- "editor.formatOnSave": true,
56
54
  "prettier.documentSelectors": [
57
55
  "**/.eslintignore",
58
56
  "**/.node-version",
@@ -64,5 +62,7 @@
64
62
  ],
65
63
  "prettier.enable": true,
66
64
  "stylelint.enable": true,
67
- "stylelint.validate": ["css", "html", "svelte", "astro"]
65
+ "stylelint.validate": ["css", "html", "svelte", "astro"],
66
+ "typescript.enablePromptUseWorkspaceTsdk": true,
67
+ "typescript.tsdk": "node_modules/typescript/lib"
68
68
  }
@@ -42,23 +42,20 @@
42
42
  "test": "echo \"Error: no test specified\" && exit 1"
43
43
  },
44
44
  "dependencies": {
45
- "@types/node": "~20.19.24",
46
- "@types/yargs": "^17.0.34",
45
+ "@types/node": "~20.19.27",
46
+ "@types/yargs": "^17.0.35",
47
47
  "lognow": "^0.3.2",
48
48
  "yargs": "^18.0.0"
49
49
  },
50
50
  "devDependencies": {
51
- "@kitschpatrol/shared-config": "^5.8.3",
52
- "bumpp": "^10.3.1",
53
- "mdat-plugin-cli-help": "^1.0.2",
54
- "tsdown": "^0.16.1",
51
+ "@kitschpatrol/shared-config": "^5.10.0",
52
+ "bumpp": "^10.3.2",
53
+ "mdat-plugin-cli-help": "^1.0.4",
54
+ "tsdown": "^0.18.3",
55
55
  "typescript": "~5.9.3"
56
56
  },
57
- "packageManager": "pnpm@10.20.0",
57
+ "packageManager": "pnpm@10.26.2",
58
58
  "engines": {
59
59
  "node": ">=20.19.0"
60
- },
61
- "publishConfig": {
62
- "access": "public"
63
60
  }
64
61
  }
@@ -1,4 +1,18 @@
1
+ # Required by @kitschpatrol/shared-config
2
+
1
3
  onlyBuiltDependencies:
2
4
  - esbuild
3
5
  - puppeteer
4
6
  - unrs-resolver
7
+
8
+ publicHoistPattern:
9
+ - '@kitschpatrol/repo-config'
10
+ - '@kitschpatrol/typescript-config'
11
+ - 'case-police'
12
+ - '*cspell*'
13
+ - '*eslint*'
14
+ - '*knip*'
15
+ - '*mdat*'
16
+ - '*prettier*'
17
+ - '*remark*'
18
+ - '*stylelint*'
@@ -1,16 +1,4 @@
1
1
  publish-branch=main
2
2
 
3
- # Required for using @kitschpatrol/shared-config and the ksc command with pnpm
4
- public-hoist-pattern[]=@kitschpatrol/repo-config
5
- public-hoist-pattern[]=@kitschpatrol/typescript-config
6
- public-hoist-pattern[]=case-police
7
- public-hoist-pattern[]=*cspell*
8
- public-hoist-pattern[]=*eslint*
9
- public-hoist-pattern[]=*knip*
10
- public-hoist-pattern[]=*mdat*
11
- public-hoist-pattern[]=*prettier*
12
- public-hoist-pattern[]=*remark*
13
- public-hoist-pattern[]=*stylelint*
14
-
15
3
  # Required for automated local publishing
16
4
  //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}
@@ -1,21 +1,30 @@
1
1
  {
2
- "explorer.fileNesting.enabled": true,
3
- "explorer.fileNesting.expand": false,
4
- "explorer.fileNesting.patterns": {
5
- "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
6
- "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
7
- ".env": ".env.*",
8
- "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
9
- "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
2
+ "[astro]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
4
  },
11
- "typescript.enablePromptUseWorkspaceTsdk": true,
12
- "typescript.tsdk": "node_modules/typescript/lib",
5
+ "[gitignore]": {
6
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
7
+ },
8
+ "[ruby]": {
9
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
+ },
11
+ "[shellscript]": {
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
13
+ },
14
+ "[svelte]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
16
+ },
17
+ "cSpell.enabled": true,
18
+ "cSpell.workspaceRootPath": ".",
13
19
  "editor.codeActionsOnSave": {
14
20
  "source.fixAll": "explicit",
15
21
  "source.organizeImports": "never"
16
22
  },
23
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
24
+ "editor.formatOnSave": true,
17
25
  "eslint.enable": true,
18
26
  "eslint.runtime": "node",
27
+ "eslint.useFlatConfig": true,
19
28
  "eslint.validate": [
20
29
  "astro",
21
30
  "html",
@@ -33,26 +42,15 @@
33
42
  "xml",
34
43
  "yaml"
35
44
  ],
36
- "eslint.useFlatConfig": true,
37
- "cSpell.enabled": true,
38
- "cSpell.workspaceRootPath": ".",
39
- "[astro]": {
40
- "editor.defaultFormatter": "esbenp.prettier-vscode"
41
- },
42
- "[gitignore]": {
43
- "editor.defaultFormatter": "esbenp.prettier-vscode"
44
- },
45
- "[ruby]": {
46
- "editor.defaultFormatter": "esbenp.prettier-vscode"
47
- },
48
- "[shellscript]": {
49
- "editor.defaultFormatter": "esbenp.prettier-vscode"
50
- },
51
- "[svelte]": {
52
- "editor.defaultFormatter": "esbenp.prettier-vscode"
45
+ "explorer.fileNesting.enabled": true,
46
+ "explorer.fileNesting.expand": false,
47
+ "explorer.fileNesting.patterns": {
48
+ ".env": ".env.*, .template.env",
49
+ "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
50
+ "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
51
+ "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
52
+ "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
53
53
  },
54
- "editor.defaultFormatter": "esbenp.prettier-vscode",
55
- "editor.formatOnSave": true,
56
54
  "prettier.documentSelectors": [
57
55
  "**/.eslintignore",
58
56
  "**/.node-version",
@@ -64,5 +62,7 @@
64
62
  ],
65
63
  "prettier.enable": true,
66
64
  "stylelint.enable": true,
67
- "stylelint.validate": ["css", "html", "svelte", "astro"]
65
+ "stylelint.validate": ["css", "html", "svelte", "astro"],
66
+ "typescript.enablePromptUseWorkspaceTsdk": true,
67
+ "typescript.tsdk": "node_modules/typescript/lib"
68
68
  }
@@ -30,32 +30,20 @@
30
30
  "test": "echo \"Error: no test specified\" && exit 1"
31
31
  },
32
32
  "dependencies": {
33
- "@types/node": "~22.19.0",
33
+ "@types/node": "~22.19.3",
34
34
  "lognow": "^0.3.2"
35
35
  },
36
36
  "devDependencies": {
37
- "@kitschpatrol/shared-config": "^5.8.3",
38
- "bumpp": "^10.3.1",
39
- "electron": "^39.1.1",
37
+ "@kitschpatrol/shared-config": "^5.10.0",
38
+ "bumpp": "^10.3.2",
39
+ "electron": "^39.2.7",
40
40
  "electron-builder": "^26.0.12",
41
41
  "typescript": "~5.9.3",
42
42
  "vite": "npm:rolldown-vite@7.2.2",
43
43
  "vite-plugin-electron": "^0.29.0"
44
44
  },
45
- "packageManager": "pnpm@10.20.0",
45
+ "packageManager": "pnpm@10.26.2",
46
46
  "engines": {
47
47
  "node": ">=22.18.0"
48
- },
49
- "pnpm": {
50
- "onlyBuiltDependencies": [
51
- "electron",
52
- "electron-winstaller",
53
- "esbuild",
54
- "puppeteer",
55
- "unrs-resolver"
56
- ],
57
- "overrides": {
58
- "vite": "npm:rolldown-vite@7.2.2"
59
- }
60
48
  }
61
49
  }
@@ -1,3 +1,24 @@
1
+ # Required by @kitschpatrol/shared-config
2
+
1
3
  onlyBuiltDependencies:
4
+ - electron
5
+ - electron-winstaller
2
6
  - esbuild
7
+ - puppeteer
3
8
  - unrs-resolver
9
+ - unrs-resolver
10
+
11
+ overrides:
12
+ 'vite': 'npm:rolldown-vite@7.3.0'
13
+
14
+ publicHoistPattern:
15
+ - '@kitschpatrol/repo-config'
16
+ - '@kitschpatrol/typescript-config'
17
+ - 'case-police'
18
+ - '*cspell*'
19
+ - '*eslint*'
20
+ - '*knip*'
21
+ - '*mdat*'
22
+ - '*prettier*'
23
+ - '*remark*'
24
+ - '*stylelint*'
@@ -1,15 +1,14 @@
1
1
  :root {
2
2
  font-family: system-ui, Helvetica, Arial, sans-serif;
3
3
  font-weight: 400;
4
- -webkit-font-smoothing: antialiased;
5
- -moz-osx-font-smoothing: grayscale;
4
+ font-synthesis: none;
6
5
  line-height: 1.5;
7
6
  color: rgb(255 255 255 / 87%);
8
7
  text-rendering: optimizelegibility;
9
8
  color-scheme: light dark;
10
9
  background-color: #242424;
11
-
12
- font-synthesis: none;
10
+ -webkit-font-smoothing: antialiased;
11
+ -moz-osx-font-smoothing: grayscale;
13
12
  }
14
13
 
15
14
  a {
@@ -1,16 +1,4 @@
1
1
  publish-branch=main
2
2
 
3
- # Required for using @kitschpatrol/shared-config and the ksc command with pnpm
4
- public-hoist-pattern[]=@kitschpatrol/repo-config
5
- public-hoist-pattern[]=@kitschpatrol/typescript-config
6
- public-hoist-pattern[]=case-police
7
- public-hoist-pattern[]=*cspell*
8
- public-hoist-pattern[]=*eslint*
9
- public-hoist-pattern[]=*knip*
10
- public-hoist-pattern[]=*mdat*
11
- public-hoist-pattern[]=*prettier*
12
- public-hoist-pattern[]=*remark*
13
- public-hoist-pattern[]=*stylelint*
14
-
15
3
  # Required for automated local publishing
16
4
  //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}
@@ -1,21 +1,30 @@
1
1
  {
2
- "explorer.fileNesting.enabled": true,
3
- "explorer.fileNesting.expand": false,
4
- "explorer.fileNesting.patterns": {
5
- "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
6
- "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
7
- ".env": ".env.*",
8
- "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
9
- "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
2
+ "[astro]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
4
  },
11
- "typescript.enablePromptUseWorkspaceTsdk": true,
12
- "typescript.tsdk": "node_modules/typescript/lib",
5
+ "[gitignore]": {
6
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
7
+ },
8
+ "[ruby]": {
9
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
+ },
11
+ "[shellscript]": {
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
13
+ },
14
+ "[svelte]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
16
+ },
17
+ "cSpell.enabled": true,
18
+ "cSpell.workspaceRootPath": ".",
13
19
  "editor.codeActionsOnSave": {
14
20
  "source.fixAll": "explicit",
15
21
  "source.organizeImports": "never"
16
22
  },
23
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
24
+ "editor.formatOnSave": true,
17
25
  "eslint.enable": true,
18
26
  "eslint.runtime": "node",
27
+ "eslint.useFlatConfig": true,
19
28
  "eslint.validate": [
20
29
  "astro",
21
30
  "html",
@@ -33,26 +42,15 @@
33
42
  "xml",
34
43
  "yaml"
35
44
  ],
36
- "eslint.useFlatConfig": true,
37
- "cSpell.enabled": true,
38
- "cSpell.workspaceRootPath": ".",
39
- "[astro]": {
40
- "editor.defaultFormatter": "esbenp.prettier-vscode"
41
- },
42
- "[gitignore]": {
43
- "editor.defaultFormatter": "esbenp.prettier-vscode"
44
- },
45
- "[ruby]": {
46
- "editor.defaultFormatter": "esbenp.prettier-vscode"
47
- },
48
- "[shellscript]": {
49
- "editor.defaultFormatter": "esbenp.prettier-vscode"
50
- },
51
- "[svelte]": {
52
- "editor.defaultFormatter": "esbenp.prettier-vscode"
45
+ "explorer.fileNesting.enabled": true,
46
+ "explorer.fileNesting.expand": false,
47
+ "explorer.fileNesting.patterns": {
48
+ ".env": ".env.*, .template.env",
49
+ "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
50
+ "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
51
+ "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
52
+ "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
53
53
  },
54
- "editor.defaultFormatter": "esbenp.prettier-vscode",
55
- "editor.formatOnSave": true,
56
54
  "prettier.documentSelectors": [
57
55
  "**/.eslintignore",
58
56
  "**/.node-version",
@@ -64,5 +62,7 @@
64
62
  ],
65
63
  "prettier.enable": true,
66
64
  "stylelint.enable": true,
67
- "stylelint.validate": ["css", "html", "svelte", "astro"]
65
+ "stylelint.validate": ["css", "html", "svelte", "astro"],
66
+ "typescript.enablePromptUseWorkspaceTsdk": true,
67
+ "typescript.tsdk": "node_modules/typescript/lib"
68
68
  }
@@ -38,20 +38,17 @@
38
38
  "test": "echo \"Error: no test specified\" && exit 1"
39
39
  },
40
40
  "dependencies": {
41
- "@types/node": "~20.19.24",
41
+ "@types/node": "~20.19.27",
42
42
  "lognow": "^0.2.2"
43
43
  },
44
44
  "devDependencies": {
45
- "@kitschpatrol/shared-config": "^5.8.3",
46
- "bumpp": "^10.3.1",
47
- "tsdown": "^0.16.1",
45
+ "@kitschpatrol/shared-config": "^5.10.0",
46
+ "bumpp": "^10.3.2",
47
+ "tsdown": "^0.18.3",
48
48
  "typescript": "~5.9.3"
49
49
  },
50
- "packageManager": "pnpm@10.20.0",
50
+ "packageManager": "pnpm@10.26.2",
51
51
  "engines": {
52
52
  "node": ">=20.19.0"
53
- },
54
- "publishConfig": {
55
- "access": "public"
56
53
  }
57
54
  }
@@ -1,3 +1,17 @@
1
+ # Required by @kitschpatrol/shared-config
2
+
1
3
  onlyBuiltDependencies:
2
4
  - esbuild
3
5
  - unrs-resolver
6
+
7
+ publicHoistPattern:
8
+ - '@kitschpatrol/repo-config'
9
+ - '@kitschpatrol/typescript-config'
10
+ - 'case-police'
11
+ - '*cspell*'
12
+ - '*eslint*'
13
+ - '*knip*'
14
+ - '*mdat*'
15
+ - '*prettier*'
16
+ - '*remark*'
17
+ - '*stylelint*'
@@ -1,16 +1,4 @@
1
1
  publish-branch=main
2
2
 
3
- # Required for using @kitschpatrol/shared-config and the ksc command with pnpm
4
- public-hoist-pattern[]=@kitschpatrol/repo-config
5
- public-hoist-pattern[]=@kitschpatrol/typescript-config
6
- public-hoist-pattern[]=case-police
7
- public-hoist-pattern[]=*cspell*
8
- public-hoist-pattern[]=*eslint*
9
- public-hoist-pattern[]=*knip*
10
- public-hoist-pattern[]=*mdat*
11
- public-hoist-pattern[]=*prettier*
12
- public-hoist-pattern[]=*remark*
13
- public-hoist-pattern[]=*stylelint*
14
-
15
3
  # Required for automated local publishing
16
4
  //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}
@@ -1,21 +1,30 @@
1
1
  {
2
- "explorer.fileNesting.enabled": true,
3
- "explorer.fileNesting.expand": false,
4
- "explorer.fileNesting.patterns": {
5
- "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
6
- "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
7
- ".env": ".env.*",
8
- "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
9
- "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
2
+ "[astro]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
4
  },
11
- "typescript.enablePromptUseWorkspaceTsdk": true,
12
- "typescript.tsdk": "node_modules/typescript/lib",
5
+ "[gitignore]": {
6
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
7
+ },
8
+ "[ruby]": {
9
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
+ },
11
+ "[shellscript]": {
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
13
+ },
14
+ "[svelte]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
16
+ },
17
+ "cSpell.enabled": true,
18
+ "cSpell.workspaceRootPath": ".",
13
19
  "editor.codeActionsOnSave": {
14
20
  "source.fixAll": "explicit",
15
21
  "source.organizeImports": "never"
16
22
  },
23
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
24
+ "editor.formatOnSave": true,
17
25
  "eslint.enable": true,
18
26
  "eslint.runtime": "node",
27
+ "eslint.useFlatConfig": true,
19
28
  "eslint.validate": [
20
29
  "astro",
21
30
  "html",
@@ -33,26 +42,15 @@
33
42
  "xml",
34
43
  "yaml"
35
44
  ],
36
- "eslint.useFlatConfig": true,
37
- "cSpell.enabled": true,
38
- "cSpell.workspaceRootPath": ".",
39
- "[astro]": {
40
- "editor.defaultFormatter": "esbenp.prettier-vscode"
41
- },
42
- "[gitignore]": {
43
- "editor.defaultFormatter": "esbenp.prettier-vscode"
44
- },
45
- "[ruby]": {
46
- "editor.defaultFormatter": "esbenp.prettier-vscode"
47
- },
48
- "[shellscript]": {
49
- "editor.defaultFormatter": "esbenp.prettier-vscode"
50
- },
51
- "[svelte]": {
52
- "editor.defaultFormatter": "esbenp.prettier-vscode"
45
+ "explorer.fileNesting.enabled": true,
46
+ "explorer.fileNesting.expand": false,
47
+ "explorer.fileNesting.patterns": {
48
+ ".env": ".env.*, .template.env",
49
+ "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
50
+ "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
51
+ "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
52
+ "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
53
53
  },
54
- "editor.defaultFormatter": "esbenp.prettier-vscode",
55
- "editor.formatOnSave": true,
56
54
  "prettier.documentSelectors": [
57
55
  "**/.eslintignore",
58
56
  "**/.node-version",
@@ -64,5 +62,7 @@
64
62
  ],
65
63
  "prettier.enable": true,
66
64
  "stylelint.enable": true,
67
- "stylelint.validate": ["css", "html", "svelte", "astro"]
65
+ "stylelint.validate": ["css", "html", "svelte", "astro"],
66
+ "typescript.enablePromptUseWorkspaceTsdk": true,
67
+ "typescript.tsdk": "node_modules/typescript/lib"
68
68
  }
@@ -29,15 +29,15 @@
29
29
  "test": "echo \"Error: no test specified\" && exit 1"
30
30
  },
31
31
  "dependencies": {
32
- "@types/node": "~20.19.24"
32
+ "@types/node": "~20.19.27"
33
33
  },
34
34
  "devDependencies": {
35
- "@kitschpatrol/shared-config": "^5.8.3",
36
- "bumpp": "^10.3.1",
37
- "tsx": "^4.20.6",
35
+ "@kitschpatrol/shared-config": "^5.10.0",
36
+ "bumpp": "^10.3.2",
37
+ "tsx": "^4.21.0",
38
38
  "typescript": "~5.9.3"
39
39
  },
40
- "packageManager": "pnpm@10.20.0",
40
+ "packageManager": "pnpm@10.26.2",
41
41
  "engines": {
42
42
  "node": ">=20.19.0"
43
43
  }
@@ -1,3 +1,17 @@
1
+ # Required by @kitschpatrol/shared-config
2
+
1
3
  onlyBuiltDependencies:
2
4
  - esbuild
3
5
  - unrs-resolver
6
+
7
+ publicHoistPattern:
8
+ - '@kitschpatrol/repo-config'
9
+ - '@kitschpatrol/typescript-config'
10
+ - 'case-police'
11
+ - '*cspell*'
12
+ - '*eslint*'
13
+ - '*knip*'
14
+ - '*mdat*'
15
+ - '*prettier*'
16
+ - '*remark*'
17
+ - '*stylelint*'
@@ -1,16 +1,4 @@
1
1
  publish-branch=main
2
2
 
3
- # Required for using @kitschpatrol/shared-config and the ksc command with pnpm
4
- public-hoist-pattern[]=@kitschpatrol/repo-config
5
- public-hoist-pattern[]=@kitschpatrol/typescript-config
6
- public-hoist-pattern[]=case-police
7
- public-hoist-pattern[]=*cspell*
8
- public-hoist-pattern[]=*eslint*
9
- public-hoist-pattern[]=*knip*
10
- public-hoist-pattern[]=*mdat*
11
- public-hoist-pattern[]=*prettier*
12
- public-hoist-pattern[]=*remark*
13
- public-hoist-pattern[]=*stylelint*
14
-
15
3
  # Required for automated local publishing
16
4
  //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}
@@ -1,21 +1,30 @@
1
1
  {
2
- "explorer.fileNesting.enabled": true,
3
- "explorer.fileNesting.expand": false,
4
- "explorer.fileNesting.patterns": {
5
- "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
6
- "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
7
- ".env": ".env.*",
8
- "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
9
- "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
2
+ "[astro]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
4
  },
11
- "typescript.enablePromptUseWorkspaceTsdk": true,
12
- "typescript.tsdk": "node_modules/typescript/lib",
5
+ "[gitignore]": {
6
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
7
+ },
8
+ "[ruby]": {
9
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
+ },
11
+ "[shellscript]": {
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
13
+ },
14
+ "[svelte]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
16
+ },
17
+ "cSpell.enabled": true,
18
+ "cSpell.workspaceRootPath": ".",
13
19
  "editor.codeActionsOnSave": {
14
20
  "source.fixAll": "explicit",
15
21
  "source.organizeImports": "never"
16
22
  },
23
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
24
+ "editor.formatOnSave": true,
17
25
  "eslint.enable": true,
18
26
  "eslint.runtime": "node",
27
+ "eslint.useFlatConfig": true,
19
28
  "eslint.validate": [
20
29
  "astro",
21
30
  "html",
@@ -33,26 +42,15 @@
33
42
  "xml",
34
43
  "yaml"
35
44
  ],
36
- "eslint.useFlatConfig": true,
37
- "cSpell.enabled": true,
38
- "cSpell.workspaceRootPath": ".",
39
- "[astro]": {
40
- "editor.defaultFormatter": "esbenp.prettier-vscode"
41
- },
42
- "[gitignore]": {
43
- "editor.defaultFormatter": "esbenp.prettier-vscode"
44
- },
45
- "[ruby]": {
46
- "editor.defaultFormatter": "esbenp.prettier-vscode"
47
- },
48
- "[shellscript]": {
49
- "editor.defaultFormatter": "esbenp.prettier-vscode"
50
- },
51
- "[svelte]": {
52
- "editor.defaultFormatter": "esbenp.prettier-vscode"
45
+ "explorer.fileNesting.enabled": true,
46
+ "explorer.fileNesting.expand": false,
47
+ "explorer.fileNesting.patterns": {
48
+ ".env": ".env.*, .template.env",
49
+ "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
50
+ "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
51
+ "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
52
+ "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
53
53
  },
54
- "editor.defaultFormatter": "esbenp.prettier-vscode",
55
- "editor.formatOnSave": true,
56
54
  "prettier.documentSelectors": [
57
55
  "**/.eslintignore",
58
56
  "**/.node-version",
@@ -64,5 +62,7 @@
64
62
  ],
65
63
  "prettier.enable": true,
66
64
  "stylelint.enable": true,
67
- "stylelint.validate": ["css", "html", "svelte", "astro"]
65
+ "stylelint.validate": ["css", "html", "svelte", "astro"],
66
+ "typescript.enablePromptUseWorkspaceTsdk": true,
67
+ "typescript.tsdk": "node_modules/typescript/lib"
68
68
  }
@@ -64,22 +64,19 @@
64
64
  },
65
65
  "dependencies": {
66
66
  "@types/node": "~22.16.5",
67
- "unplugin": "^2.3.10",
67
+ "unplugin": "^2.3.11",
68
68
  "unplugin-utils": "^0.3.1"
69
69
  },
70
70
  "devDependencies": {
71
- "@kitschpatrol/shared-config": "^5.8.3",
72
- "@sxzz/test-utils": "^0.5.12",
73
- "bumpp": "^10.3.1",
74
- "tsdown": "^0.16.1",
71
+ "@kitschpatrol/shared-config": "^5.10.0",
72
+ "@sxzz/test-utils": "^0.5.15",
73
+ "bumpp": "^10.3.2",
74
+ "tsdown": "^0.18.3",
75
75
  "typescript": "~5.9.3",
76
- "vitest": "^4.0.8"
76
+ "vitest": "^4.0.16"
77
77
  },
78
- "packageManager": "pnpm@10.20.0",
78
+ "packageManager": "pnpm@10.26.2",
79
79
  "engines": {
80
80
  "node": ">=22.16.0"
81
- },
82
- "publishConfig": {
83
- "access": "public"
84
81
  }
85
82
  }
@@ -1,3 +1,17 @@
1
+ # Required by @kitschpatrol/shared-config
2
+
1
3
  onlyBuiltDependencies:
2
4
  - esbuild
3
5
  - unrs-resolver
6
+
7
+ publicHoistPattern:
8
+ - '@kitschpatrol/repo-config'
9
+ - '@kitschpatrol/typescript-config'
10
+ - 'case-police'
11
+ - '*cspell*'
12
+ - '*eslint*'
13
+ - '*knip*'
14
+ - '*mdat*'
15
+ - '*prettier*'
16
+ - '*remark*'
17
+ - '*stylelint*'
@@ -1,16 +1,4 @@
1
1
  publish-branch=main
2
2
 
3
- # Required for using @kitschpatrol/shared-config and the ksc command with pnpm
4
- public-hoist-pattern[]=@kitschpatrol/repo-config
5
- public-hoist-pattern[]=@kitschpatrol/typescript-config
6
- public-hoist-pattern[]=case-police
7
- public-hoist-pattern[]=*cspell*
8
- public-hoist-pattern[]=*eslint*
9
- public-hoist-pattern[]=*knip*
10
- public-hoist-pattern[]=*mdat*
11
- public-hoist-pattern[]=*prettier*
12
- public-hoist-pattern[]=*remark*
13
- public-hoist-pattern[]=*stylelint*
14
-
15
3
  # Required for automated local publishing
16
4
  //registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}
@@ -1,21 +1,30 @@
1
1
  {
2
- "explorer.fileNesting.enabled": true,
3
- "explorer.fileNesting.expand": false,
4
- "explorer.fileNesting.patterns": {
5
- "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
6
- "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
7
- ".env": ".env.*",
8
- "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
9
- "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
2
+ "[astro]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
4
  },
11
- "typescript.enablePromptUseWorkspaceTsdk": true,
12
- "typescript.tsdk": "node_modules/typescript/lib",
5
+ "[gitignore]": {
6
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
7
+ },
8
+ "[ruby]": {
9
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
+ },
11
+ "[shellscript]": {
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
13
+ },
14
+ "[svelte]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
16
+ },
17
+ "cSpell.enabled": true,
18
+ "cSpell.workspaceRootPath": ".",
13
19
  "editor.codeActionsOnSave": {
14
20
  "source.fixAll": "explicit",
15
21
  "source.organizeImports": "never"
16
22
  },
23
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
24
+ "editor.formatOnSave": true,
17
25
  "eslint.enable": true,
18
26
  "eslint.runtime": "node",
27
+ "eslint.useFlatConfig": true,
19
28
  "eslint.validate": [
20
29
  "astro",
21
30
  "html",
@@ -33,26 +42,15 @@
33
42
  "xml",
34
43
  "yaml"
35
44
  ],
36
- "eslint.useFlatConfig": true,
37
- "cSpell.enabled": true,
38
- "cSpell.workspaceRootPath": ".",
39
- "[astro]": {
40
- "editor.defaultFormatter": "esbenp.prettier-vscode"
41
- },
42
- "[gitignore]": {
43
- "editor.defaultFormatter": "esbenp.prettier-vscode"
44
- },
45
- "[ruby]": {
46
- "editor.defaultFormatter": "esbenp.prettier-vscode"
47
- },
48
- "[shellscript]": {
49
- "editor.defaultFormatter": "esbenp.prettier-vscode"
50
- },
51
- "[svelte]": {
52
- "editor.defaultFormatter": "esbenp.prettier-vscode"
45
+ "explorer.fileNesting.enabled": true,
46
+ "explorer.fileNesting.expand": false,
47
+ "explorer.fileNesting.patterns": {
48
+ ".env": ".env.*, .template.env",
49
+ "*.js": "${basename}.ts.map, ${basename}.js.map, ${basename}.d.ts, ${basename}.d.ts.map, ${basename}.d.js.map",
50
+ "*.ts": "${basename}.ts.map, ${basename}.d.ts, ${basename}.d.ts.map",
51
+ "package.json": ".*ignore, .*rc, .*.js, .*.mjs, .*.cjs, .*.ts, .*.mts, .*.cts, .*.json, .*.jsonc, .*.json5, .*.yml, .*.yaml, *config.js, *config.mjs, *config.cjs, *config.ts, *config.mts, *config.cts, *config.json, *config.jsonc, *config.json5, *config.yml, *config.yaml, pnpm*, workspace*, yarn*, lerna.json, netlify.toml, package-lock.json, turbo.json, vercel.json, wrangler.toml, yarn.lock",
52
+ "readme.md": "authors*, backers*, changelog*, citation*, code_of_conduct*, contributing*, contributors*, copying*, credits*, governance*, history*, license*, maintainers*, release_notes*, security*, sponsors*"
53
53
  },
54
- "editor.defaultFormatter": "esbenp.prettier-vscode",
55
- "editor.formatOnSave": true,
56
54
  "prettier.documentSelectors": [
57
55
  "**/.eslintignore",
58
56
  "**/.node-version",
@@ -64,5 +62,7 @@
64
62
  ],
65
63
  "prettier.enable": true,
66
64
  "stylelint.enable": true,
67
- "stylelint.validate": ["css", "html", "svelte", "astro"]
65
+ "stylelint.validate": ["css", "html", "svelte", "astro"],
66
+ "typescript.enablePromptUseWorkspaceTsdk": true,
67
+ "typescript.tsdk": "node_modules/typescript/lib"
68
68
  }
@@ -30,23 +30,18 @@
30
30
  "test": "echo \"Error: no test specified\" && exit 1"
31
31
  },
32
32
  "dependencies": {
33
- "@types/node": "~20.19.24"
33
+ "@types/node": "~20.19.27"
34
34
  },
35
35
  "devDependencies": {
36
- "@kitschpatrol/shared-config": "^5.8.3",
37
- "bumpp": "^10.3.1",
38
- "poptab": "^1.0.3",
36
+ "@kitschpatrol/shared-config": "^5.10.0",
37
+ "bumpp": "^10.3.2",
38
+ "poptab": "^1.0.4",
39
39
  "typescript": "~5.9.3",
40
40
  "vite": "npm:rolldown-vite@7.1.17",
41
41
  "vite-plugin-mkcert": "^1.17.9"
42
42
  },
43
- "packageManager": "pnpm@10.20.0",
43
+ "packageManager": "pnpm@10.26.2",
44
44
  "engines": {
45
45
  "node": ">=20.19.0"
46
- },
47
- "pnpm": {
48
- "overrides": {
49
- "vite": "npm:rolldown-vite@7.1.17"
50
- }
51
46
  }
52
47
  }
@@ -1,3 +1,20 @@
1
+ # Required by @kitschpatrol/shared-config
2
+
1
3
  onlyBuiltDependencies:
2
4
  - esbuild
3
5
  - unrs-resolver
6
+
7
+ overrides:
8
+ 'vite': 'npm:rolldown-vite@7.3.0'
9
+
10
+ publicHoistPattern:
11
+ - '@kitschpatrol/repo-config'
12
+ - '@kitschpatrol/typescript-config'
13
+ - 'case-police'
14
+ - '*cspell*'
15
+ - '*eslint*'
16
+ - '*knip*'
17
+ - '*mdat*'
18
+ - '*prettier*'
19
+ - '*remark*'
20
+ - '*stylelint*'
@@ -1,15 +1,14 @@
1
1
  :root {
2
2
  font-family: system-ui, Helvetica, Arial, sans-serif;
3
3
  font-weight: 400;
4
- -webkit-font-smoothing: antialiased;
5
- -moz-osx-font-smoothing: grayscale;
4
+ font-synthesis: none;
6
5
  line-height: 1.5;
7
6
  color: rgb(255 255 255 / 87%);
8
7
  text-rendering: optimizelegibility;
9
8
  color-scheme: light dark;
10
9
  background-color: #242424;
11
-
12
- font-synthesis: none;
10
+ -webkit-font-smoothing: antialiased;
11
+ -moz-osx-font-smoothing: grayscale;
13
12
  }
14
13
 
15
14
  a {