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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
73
|
-
"oxlint": "1.
|
|
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",
|