create-template-project 1.5.9 → 1.5.11

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.
@@ -45,7 +45,7 @@
45
45
  "description": "V8 coverage provider for Vitest."
46
46
  },
47
47
  "conventional-changelog": {
48
- "version": "7.2.0",
48
+ "version": "7.2.1",
49
49
  "description": "Generate a changelog from git metadata."
50
50
  },
51
51
  "husky": {
@@ -53,7 +53,7 @@
53
53
  "description": "Modern native git hooks made easy."
54
54
  },
55
55
  "oxlint": {
56
- "version": "1.70.0",
56
+ "version": "1.71.0",
57
57
  "description": "A JavaScript linter written in Rust."
58
58
  },
59
59
  "oxlint-tsgolint": {
@@ -61,7 +61,7 @@
61
61
  "description": "TypeScript-specific rules for oxlint."
62
62
  },
63
63
  "oxfmt": {
64
- "version": "0.55.0",
64
+ "version": "0.56.0",
65
65
  "description": "High performance JavaScript / TypeScript formatter."
66
66
  },
67
67
  "typescript": {
package/dist/index.js CHANGED
@@ -1937,6 +1937,9 @@ var main = async () => {
1937
1937
  const options = await parseArgs();
1938
1938
  const isProgress = options.progress;
1939
1939
  if (isProgress) intro("create-template-project");
1940
+ debug("*".repeat(60));
1941
+ debug(`* TEMPLATE: ${options.template}`);
1942
+ debug("*".repeat(60));
1940
1943
  debug("Arguments parsed: %O", options);
1941
1944
  debug("Generating project");
1942
1945
  await generateProject(options);
@@ -45,8 +45,13 @@ A modern project built with {{projectName}}, emphasizing type safety, performanc
45
45
  - **Extensions:** Always use `.js` extensions in relative imports (e.g., `import { main } from './lib.js';`) to comply with ESM requirements in Node.js, even though source files are `.ts`.
46
46
  - **Built-ins:** Use the `node:` prefix for built-in modules (e.g., `import path from 'node:path';`).
47
47
 
48
- ### Formatting
48
+ ### Linting & Formatting Configuration
49
49
 
50
+ This project uses a layered configuration approach:
51
+
52
+ - **`oxc.config.ts`** — Managed source of truth for `oxlint` and `oxfmt` defaults. **Do not edit this file**; it is overwritten during template updates.
53
+ - **`oxlint.config.ts`** — User-customizable linting overrides. Preserved across updates. Use this to add or relax lint rules for your project.
54
+ - **`oxfmt.config.ts`** — User-customizable formatting overrides. Preserved across updates. Use this to adjust formatting preferences.
50
55
  - **Tooling:** oxfmt is enforced via `pnpm run lint`.
51
56
  - **Indentation:** Tabs are used for indentation.
52
57
  - **Quotes:** Single quotes for strings, except when double quotes prevent escaping.
@@ -42,7 +42,7 @@ This project is built using **Vite 8** for high-performance development and bund
42
42
  - **Vite 8**: Modern, ultra-fast development and build tool.
43
43
  - **Vitest**: Vite-native testing framework with browser support.
44
44
  - **Playwright**: Reliable E2E and browser automation.
45
- - **oxlint**: Extremely fast JavaScript/TypeScript linter.
46
- - **oxfmt**: High performance JavaScript / TypeScript formatter.
45
+ - **oxlint**: Extremely fast JavaScript/TypeScript linter. Default rules live in `oxc.config.ts` (managed); customize overrides in `oxlint.config.ts`.
46
+ - **oxfmt**: High performance JavaScript / TypeScript formatter. Default settings live in `oxc.config.ts` (managed); customize overrides in `oxfmt.config.ts`.
47
47
  - **Husky & Commitlint**: Ensuring high-quality commit messages.
48
48
  - **Conventional Changelog**: Automated changelog generation.
@@ -1,3 +1,19 @@
1
+ /**
2
+ * ═══════════════════════════════════════════════════════════════════════════
3
+ * DO NOT EDIT THIS FILE — IT IS MANAGED AND WILL BE OVERWRITTEN ON UPDATES.
4
+ * ═══════════════════════════════════════════════════════════════════════════
5
+ *
6
+ * This file is the source of truth for the default `oxlint` and `oxfmt`
7
+ * configuration. It is automatically regenerated when the template is
8
+ * updated — any manual changes will be lost.
9
+ *
10
+ * To customize linting rules, edit `oxlint.config.ts`.
11
+ * To customize formatting settings, edit `oxfmt.config.ts`.
12
+ *
13
+ * Those two files are preserved across template updates and are designed
14
+ * to receive user overrides.
15
+ */
16
+
1
17
  import {defineConfig} from 'oxlint';
2
18
  import {configs as regexpConfigs} from 'eslint-plugin-regexp';
3
19
 
@@ -143,12 +159,17 @@ export const linter = defineConfig({
143
159
  'jest/valid-describe-callback': 'off',
144
160
  'jest/valid-expect': 'off',
145
161
  'jest/valid-title': 'off',
162
+ 'jsdoc/require-param': 'error',
163
+ 'jsdoc/require-param-type': 'off',
164
+ 'jsdoc/require-returns': 'warn',
165
+ 'jsdoc/require-returns-type': 'off',
146
166
  'oxc/no-async-await': 'off',
147
167
  'oxc/no-map-spread': 'off', // TODO: consider enabling
148
168
  'oxc/no-optional-chaining': 'off',
149
169
  'oxc/no-rest-spread-properties': 'off',
150
170
  'unicorn/escape-case': 'off',
151
171
  'unicorn/filename-case': 'off', // TODO: consider enabling
172
+ 'unicorn/max-nested-calls': ['warn', {'max': 5}],
152
173
  'unicorn/no-array-reduce': 'off', // TODO: consider enabling
153
174
  'unicorn/no-array-sort': 'off', // TODO: consider enabling
154
175
  'unicorn/no-hex-escape': 'off',
@@ -159,6 +180,7 @@ export const linter = defineConfig({
159
180
  'unicorn/no-process-exit': 'off', // TODO: consider enabling
160
181
  'unicorn/no-typeof-undefined': 'off', // TODO: consider enabling
161
182
  'unicorn/prefer-module': 'off', // TODO: consider enabling
183
+ 'unicorn/prefer-number-coercion': 'off', // TODO: consider enabling
162
184
  'react/jsx-filename-extension': ['error', {extensions: ['.tsx']}],
163
185
  'react/jsx-max-depth': ['error', {max: 5}],
164
186
  'react/jsx-no-literals': 'off',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-template-project",
3
- "version": "1.5.9",
3
+ "version": "1.5.11",
4
4
  "private": false,
5
5
  "description": "An ultra-modular, type-safe Node.js CLI tool used to scaffold new project templates (CLI, Webpage, Webapp, Fullstack) with best-practice configurations pre-installed.",
6
6
  "keywords": [
@@ -65,12 +65,12 @@
65
65
  "@types/debug": "4.1.13",
66
66
  "@types/node": "26.0.0",
67
67
  "@vitest/coverage-v8": "4.1.9",
68
- "conventional-changelog": "7.2.0",
68
+ "conventional-changelog": "7.2.1",
69
69
  "conventional-changelog-angular": "8.3.1",
70
70
  "eslint-plugin-regexp": "3.1.0",
71
71
  "husky": "9.1.7",
72
- "oxfmt": "0.55.0",
73
- "oxlint": "1.70.0",
72
+ "oxfmt": "0.56.0",
73
+ "oxlint": "1.71.0",
74
74
  "oxlint-tsgolint": "0.23.0",
75
75
  "release-it": "20.2.0",
76
76
  "rimraf": "6.1.3",