zeno-config 5.0.0 → 5.1.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.
package/README.md
CHANGED
|
@@ -157,6 +157,15 @@ For Node.js projects, extend the provided TypeScript config in your `tsconfig.js
|
|
|
157
157
|
}
|
|
158
158
|
```
|
|
159
159
|
|
|
160
|
+
For backend servers using bundlers like `tsup` or `tsx`:
|
|
161
|
+
|
|
162
|
+
```json
|
|
163
|
+
{
|
|
164
|
+
"extends": "zeno-config/tsconfig-server"
|
|
165
|
+
// your tsconfig options
|
|
166
|
+
}
|
|
167
|
+
```
|
|
168
|
+
|
|
160
169
|
For React projects:
|
|
161
170
|
|
|
162
171
|
```json
|
|
@@ -298,6 +307,7 @@ See [src/prettier.js](src/prettier.js) for the default Prettier configuration.
|
|
|
298
307
|
See the TypeScript configuration files:
|
|
299
308
|
|
|
300
309
|
- [src/tsconfig.base.json](src/tsconfig.base.json) - Base configuration for Node.js projects
|
|
310
|
+
- [src/tsconfig.server.json](src/tsconfig.server.json) - Configuration for backend servers using bundlers like tsup/tsx (extends base)
|
|
301
311
|
- [src/tsconfig.react.json](src/tsconfig.react.json) - Configuration for React projects (extends base)
|
|
302
312
|
|
|
303
313
|
### Included Plugins
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zeno-config",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.1.0",
|
|
4
4
|
"description": "Preconfigured and opinionated ESLint, Prettier, and TypeScript setup",
|
|
5
5
|
"author": "Rick Brenn <brenn.rick@gmail.com>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -36,6 +36,7 @@
|
|
|
36
36
|
"default": "./src/prettier.js"
|
|
37
37
|
},
|
|
38
38
|
"./tsconfig": "./src/tsconfig.base.json",
|
|
39
|
+
"./tsconfig-server": "./src/tsconfig.server.json",
|
|
39
40
|
"./tsconfig-react": "./src/tsconfig.react.json",
|
|
40
41
|
"./extensions": {
|
|
41
42
|
"types": "./src/extensions.d.ts",
|
|
@@ -430,7 +430,7 @@ const getUnicornPluginRules = () => {
|
|
|
430
430
|
'unicorn/template-indent': 'off', // conflicts with prettier
|
|
431
431
|
|
|
432
432
|
// https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/text-encoding-identifier-case.md
|
|
433
|
-
'unicorn/text-encoding-identifier-case': '
|
|
433
|
+
'unicorn/text-encoding-identifier-case': 'off',
|
|
434
434
|
|
|
435
435
|
// https://github.com/sindresorhus/eslint-plugin-unicorn/blob/main/docs/rules/throw-new-error.md
|
|
436
436
|
'unicorn/throw-new-error': 'error', // handled by unicorn/new-for-builtins
|
package/src/tsconfig.base.json
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
"module": "NodeNext", // Node.js native ESM
|
|
10
10
|
"moduleResolution": "NodeNext", // Node.js native ESM resolution
|
|
11
11
|
"moduleDetection": "force", // treat all files as modules
|
|
12
|
+
"resolveJsonModule": true, // allow importing .json files with type safety
|
|
12
13
|
"verbatimModuleSyntax": true, // enforce explicit import type syntax and matching module syntax
|
|
13
14
|
|
|
14
15
|
/* Emit */
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json.schemastore.org/tsconfig",
|
|
3
|
+
"extends": "./tsconfig.base.json",
|
|
4
|
+
"compilerOptions": {
|
|
5
|
+
/* Modules */
|
|
6
|
+
"module": "ESNext", // bundler handles module compilation
|
|
7
|
+
"moduleResolution": "bundler", // bundler-style resolution (tsup, tsx, etc.)
|
|
8
|
+
"allowImportingTsExtensions": true, // allow .ts imports (bundler resolves them)
|
|
9
|
+
|
|
10
|
+
/* Emit */
|
|
11
|
+
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.server.tsbuildinfo"
|
|
12
|
+
}
|
|
13
|
+
}
|