@alikuxac/tsconfig 1.0.3 → 1.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 ADDED
@@ -0,0 +1,77 @@
1
+ # @alikuxac/tsconfig
2
+
3
+ <p align="center">
4
+ <img src="https://raw.githubusercontent.com/microsoft/fluentui-emoji/main/assets/Gear/Flat/Gear_flat.png" width="100" height="100" />
5
+ </p>
6
+
7
+ <p align="center">
8
+ <b>A collection of opinionated, premium TypeScript configurations for modern web development.</b>
9
+ </p>
10
+
11
+ <p align="center">
12
+ <img src="https://img.shields.io/npm/v/@alikuxac/tsconfig?style=flat-square&color=black" alt="npm version" />
13
+ <img src="https://img.shields.io/npm/l/@alikuxac/tsconfig?style=flat-square&color=black" alt="license" />
14
+ <img src="https://img.shields.io/npm/dm/@alikuxac/tsconfig?style=flat-square&color=black" alt="downloads" />
15
+ </p>
16
+
17
+ ---
18
+
19
+ ## 🚀 Features
20
+
21
+ - **Strict by default**: Encourages best practices and type safety.
22
+ - **Specialized**: Configurations for Base, Next.js, and NestJS.
23
+ - **Modern**: Targeted for Node.js 20+ and modern ESM/CJS environments.
24
+ - **Lightweight**: Zero dependencies, just pure JSON.
25
+
26
+ ## 📦 Installation
27
+
28
+ ```bash
29
+ # Using npm
30
+ npm install --save-dev @alikuxac/tsconfig
31
+
32
+ # Using yarn
33
+ yarn add -D @alikuxac/tsconfig
34
+
35
+ # Using pnpm
36
+ pnpm add -D @alikuxac/tsconfig
37
+ ```
38
+
39
+ ## 🛠 Usage
40
+
41
+ Extend the configuration in your `tsconfig.json` file.
42
+
43
+ ### 🌟 Base (General Purpose)
44
+ Perfect for standard library or Node.js projects.
45
+ ```json
46
+ {
47
+ "extends": "@alikuxac/tsconfig/base"
48
+ }
49
+ ```
50
+
51
+ ### ⚛️ Next.js
52
+ Optimized for Next.js applications with proper plugin support.
53
+ ```json
54
+ {
55
+ "extends": "@alikuxac/tsconfig/nextjs"
56
+ }
57
+ ```
58
+
59
+ ### 🦁 NestJS
60
+ Tailored for NestJS/Backend projects with decorator support.
61
+ ```json
62
+ {
63
+ "extends": "@alikuxac/tsconfig/nestjs"
64
+ }
65
+ ```
66
+
67
+ ## ⚙️ Configuration Matrix
68
+
69
+ | Config | Target | Module | Features |
70
+ | :--- | :--- | :--- | :--- |
71
+ | `base` | ES2022 | ESNext | Bundler-ready, Strict |
72
+ | `nextjs` | ES2022 | ESNext | + Next.js Plugin, JSX |
73
+ | `nestjs` | ES2021 | CommonJS | + Decorators, SourceMaps |
74
+
75
+ ## 📜 License
76
+
77
+ MIT © [Alikuxac](https://github.com/alikuxac)
package/package.json CHANGED
@@ -1,9 +1,22 @@
1
1
  {
2
2
  "name": "@alikuxac/tsconfig",
3
- "version": "1.0.3",
3
+ "version": "1.1.0",
4
4
  "description": "Alikuxac tsconfig file",
5
- "main": "./src/tsconfig.json",
6
- "tsconfig": "./src/tsconfig.json",
5
+ "main": "./src/base.json",
6
+ "tsconfig": "./src/base.json",
7
+ "files": [
8
+ "src/*.json"
9
+ ],
10
+ "exports": {
11
+ ".": "./src/base.json",
12
+ "./base": "./src/base.json",
13
+ "./nextjs": "./src/nextjs.json",
14
+ "./nestjs": "./src/nestjs.json"
15
+ },
16
+ "publishConfig": {
17
+ "access": "public",
18
+ "provenance": true
19
+ },
7
20
  "scripts": {
8
21
  "lint": "prettier --check .",
9
22
  "lint:fix": "prettier --write .",
@@ -12,7 +25,7 @@
12
25
  },
13
26
  "repository": {
14
27
  "type": "git",
15
- "url": "git@github.com:alikuxac/tsconfig.git"
28
+ "url": "git+https://github.com/alikuxac/tsconfig.git"
16
29
  },
17
30
  "keywords": [
18
31
  "tsconfig",
@@ -21,11 +34,11 @@
21
34
  "author": "Alikuxac <admin@alikuxac.xyz>",
22
35
  "license": "MIT",
23
36
  "devDependencies": {
24
- "@changesets/cli": "^2.27.1",
25
- "prettier": "^3.2.4",
26
- "typescript": "^5.3.3"
37
+ "@changesets/cli": "^2.29.8",
38
+ "prettier": "^3.7.4",
39
+ "typescript": "^5.9.3"
27
40
  },
28
41
  "engines": {
29
- "node": ">=16.0.0"
42
+ "node": ">=20.0.0"
30
43
  }
31
44
  }
package/src/base.json ADDED
@@ -0,0 +1,19 @@
1
+ {
2
+ "$schema": "https://json.schemastore.org/tsconfig",
3
+ "compilerOptions": {
4
+ "target": "es2022",
5
+ "lib": ["es2022", "dom", "dom.iterable"],
6
+ "module": "esnext",
7
+ "moduleResolution": "bundler",
8
+ "resolveJsonModule": true,
9
+ "allowJs": true,
10
+ "checkJs": true,
11
+ "strict": true,
12
+ "noEmit": true,
13
+ "esModuleInterop": true,
14
+ "forceConsistentCasingInFileNames": true,
15
+ "skipLibCheck": true,
16
+ "isolatedModules": true,
17
+ "incremental": true
18
+ }
19
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "https://json.schemastore.org/tsconfig",
3
+ "extends": "./base.json",
4
+ "compilerOptions": {
5
+ "module": "commonjs",
6
+ "moduleResolution": "node",
7
+ "emitDecoratorMetadata": true,
8
+ "experimentalDecorators": true,
9
+ "allowSyntheticDefaultImports": true,
10
+ "target": "es2021",
11
+ "sourceMap": true,
12
+ "outDir": "./dist",
13
+ "strict": true
14
+ }
15
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "$schema": "https://json.schemastore.org/tsconfig",
3
+ "extends": "./base.json",
4
+ "compilerOptions": {
5
+ "plugins": [{ "name": "next" }],
6
+ "jsx": "preserve"
7
+ }
8
+ }
@@ -1,8 +0,0 @@
1
- # Changesets
2
-
3
- Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works
4
- with multi-package repos, or single-package repos to help you version and publish your code. You can
5
- find the full documentation for it [in our repository](https://github.com/changesets/changesets)
6
-
7
- We have a quick list of common questions to get you started engaging with this project in
8
- [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md)
@@ -1,11 +0,0 @@
1
- {
2
- "$schema": "https://unpkg.com/@changesets/config@2.3.0/schema.json",
3
- "changelog": "@changesets/cli/changelog",
4
- "commit": false,
5
- "fixed": [],
6
- "linked": [],
7
- "access": "public",
8
- "baseBranch": "master",
9
- "updateInternalDependencies": "patch",
10
- "ignore": []
11
- }
@@ -1,4 +0,0 @@
1
- {
2
- "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
- "extends": ["github>alikuxac/renovate"]
4
- }
@@ -1,33 +0,0 @@
1
- name: Release
2
-
3
- on:
4
- push:
5
- branches: [ master ]
6
-
7
- jobs:
8
- release:
9
- name: Release
10
- runs-on: ubuntu-latest
11
- permissions:
12
- contents: 'write'
13
- pull-requests: 'write'
14
- steps:
15
- - name: Checkout
16
- uses: actions/checkout@v4
17
-
18
- - name: Setup Volta
19
- uses: volta-cli/action@v4
20
-
21
- - name: Install dependencies
22
- run: yarn install --immutable
23
-
24
- - name: Create Release Pull Request or Publish to npm
25
- uses: changesets/action@v1
26
- with:
27
- publish: yarn publish
28
- version: yarn version
29
- commit: 'chore: release'
30
- title: 'chore: release'
31
- env:
32
- GITHUB_TOKEN: ${{ secrets.TOKEN }}
33
- NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
package/.prettierignore DELETED
@@ -1,9 +0,0 @@
1
- # Yarn
2
-
3
- **/node_modules/
4
- /.yarn/
5
- /.pnp.*
6
-
7
- # Artifacts
8
-
9
- **/*.tsbuildinfo
package/.prettierrc.json DELETED
@@ -1,4 +0,0 @@
1
- {
2
- "trailingComma": "all",
3
- "proseWrap": "always"
4
- }
package/.yarnrc.yml DELETED
@@ -1,3 +0,0 @@
1
- nodeLinker: node-modules
2
-
3
- npmPublishAccess: public
package/CHANGELOG.md DELETED
@@ -1,13 +0,0 @@
1
- # @alikuxac/tsconfig
2
-
3
- ## 1.0.3
4
-
5
- ### Patch Changes
6
-
7
- - cff6da3: chore(deps): update actions/checkout action to v4
8
- - 0f3b775: chore(deps): update all non-major dependencies
9
- - 6217738: chore(deps): bump semver from 5.7.1 to 5.7.2
10
- - 77f2ae4: chore(deps): update dependency typescript to v5
11
- - e6f20ae: chore(deps): update dependency prettier to ^3.2.4
12
- - 021fd9b: chore(deps): update dependency prettier to ^3.0.1
13
- - e3dcc6d: chore(deps): update dependency prettier to v3
package/src/tsconfig.json DELETED
@@ -1,25 +0,0 @@
1
- {
2
- "$schema": "https://json.schemastore.org/tsconfig",
3
- "compilerOptions": {
4
- "module": "commonjs",
5
- "declaration": true,
6
- "removeComments": true,
7
- "emitDecoratorMetadata": true,
8
- "experimentalDecorators": true,
9
- "allowSyntheticDefaultImports": true,
10
- "target": "es2017",
11
- "sourceMap": true,
12
- "outDir": "./dist",
13
- "baseUrl": ".",
14
- "incremental": true,
15
- "skipLibCheck": true,
16
- "strictNullChecks": false,
17
- "noImplicitAny": false,
18
- "strictBindCallApply": false,
19
- "forceConsistentCasingInFileNames": false,
20
- "noFallthroughCasesInSwitch": false,
21
- "resolveJsonModule": true,
22
- "esModuleInterop": true
23
- },
24
- "exclude": ["node_modules"]
25
- }