From af3e70da80f05a923201dc999da0f9c705296188 Mon Sep 17 00:00:00 2001 From: Abhishek Gupta Date: Fri, 27 Jun 2025 19:26:27 +0530 Subject: [PATCH 1/5] 1.0.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 5cefe2f..9e1ea6f 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@abhishek-nexgen-dev/fastkit", "type": "commonjs", - "version": "1.0.1", + "version": "1.0.2", "description": "A modular, class-based toolkit for fast API development with TypeScript and Express.", "main": "dist/FastKit.js", "types": "dist/FastKit.d.ts", From f0fbaf242b01cce82ea7231c9086c6caccd8d0b8 Mon Sep 17 00:00:00 2001 From: Abhishek Gupta Date: Fri, 27 Jun 2025 19:26:38 +0530 Subject: [PATCH 2/5] 1.1.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9e1ea6f..7b0b7a6 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@abhishek-nexgen-dev/fastkit", "type": "commonjs", - "version": "1.0.2", + "version": "1.1.0", "description": "A modular, class-based toolkit for fast API development with TypeScript and Express.", "main": "dist/FastKit.js", "types": "dist/FastKit.d.ts", From 9704d30e8584ee94648aa15d6cbd01ad77611a0a Mon Sep 17 00:00:00 2001 From: Abhishek Gupta Date: Fri, 27 Jun 2025 19:26:46 +0530 Subject: [PATCH 3/5] 2.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7b0b7a6..0c0327d 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@abhishek-nexgen-dev/fastkit", "type": "commonjs", - "version": "1.1.0", + "version": "2.0.0", "description": "A modular, class-based toolkit for fast API development with TypeScript and Express.", "main": "dist/FastKit.js", "types": "dist/FastKit.d.ts", From 92d0df923d250940bbfd45f9d4687ef7f867f050 Mon Sep 17 00:00:00 2001 From: Abhishek Gupta Date: Fri, 27 Jun 2025 20:12:41 +0530 Subject: [PATCH 4/5] feat: Update publish workflow and configuration files for improved npm publishing --- .github/workflows/publish.yml | 17 +++++------------ .npmignore | 5 +---- .npmrc | 3 +++ .pnpmfile.mjs | 18 ++++++++++++++++++ .pnpmrc | 24 ------------------------ package.json | 8 ++++---- 6 files changed, 31 insertions(+), 44 deletions(-) create mode 100644 .npmrc create mode 100644 .pnpmfile.mjs delete mode 100644 .pnpmrc diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index ce63c56..840b435 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -5,11 +5,10 @@ on: branches: - master tags: - - 'v*' # Optional: run on version tags like v1.0.0 + - 'v*' # optional: publish on version tags like v1.0.0 jobs: publish: - name: Publish to npm runs-on: ubuntu-latest if: github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/tags/v') @@ -17,11 +16,11 @@ jobs: - name: Checkout code uses: actions/checkout@v4 - - name: Use Node.js 18 + - name: Setup Node.js 18 uses: actions/setup-node@v4 with: node-version: 18 - registry-url: 'https://registry.npmjs.org/' + registry-url: https://registry.npmjs.org/ - name: Setup pnpm uses: pnpm/action-setup@v2 @@ -37,16 +36,10 @@ jobs: # - name: Run tests (optional) # run: pnpm test - - name: Authenticate with npm + - name: Authenticate to npm run: npm config set //registry.npmjs.org/:_authToken=${NPM_TOKEN} env: NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - # Optional: Authenticate with GitHub Packages - # - name: Authenticate with GitHub Packages - # run: npm config set //npm.pkg.github.com/:_authToken=${GITHUB_TOKEN} - # env: - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Publish to npm - run: pnpm publish --access public + run: pnpm publish --access public --no-git-checks diff --git a/.npmignore b/.npmignore index b2b59e4..51ca7a0 100644 --- a/.npmignore +++ b/.npmignore @@ -10,9 +10,7 @@ tsconfig*.json jest.config.* *.test.* *.spec.* -__tests__/ -test/ -tests/ + # Documentation (except README) docs/ @@ -22,7 +20,6 @@ CHANGELOG.md # Git files .git/ .gitignore -.env Environment/ # CI/CD diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..d36ee91 --- /dev/null +++ b/.npmrc @@ -0,0 +1,3 @@ +registry=https://registry.npmjs.org/ +//registry.npmjs.org/:_authToken=${NPM_TOKEN} +save-prefix=^ \ No newline at end of file diff --git a/.pnpmfile.mjs b/.pnpmfile.mjs new file mode 100644 index 0000000..8aeb67b --- /dev/null +++ b/.pnpmfile.mjs @@ -0,0 +1,18 @@ +// pnpmfile.mjs +export const hooks = { + updateConfig(config) { + return { + ...config, + shamefullyHoist: false, + strictPeerDependencies: false, + autoInstallPeers: true, + saveExact: false, + savePrefix: '^', + nodeLinker: 'isolated', + preferWorkspacePackages: true, + sharedWorkspaceLockfile: true, + publishBranch: 'master', + gitChecks: false, + } + }, +} diff --git a/.pnpmrc b/.pnpmrc deleted file mode 100644 index 007697d..0000000 --- a/.pnpmrc +++ /dev/null @@ -1,24 +0,0 @@ -# Avoid legacy-style hoisting unless absolutely needed -shamefully-hoist=false - -# Loosen peer dependency requirements during dev -strict-peer-dependencies=false - -# Automatically install required peer dependencies -auto-install-peers=true - -# Save versions with ^ to allow non-breaking updates -save-exact=false -save-prefix=^ - -# Use isolated node_modules for better reproducibility -node-linker=isolated - -# Use local workspace packages first (important for monorepos) -prefer-workspace-packages=true - -# Ensures one lockfile for all workspace packages -shared-workspace-lockfile=true - -# Only publish from main (also declared in .npmrc) -publish-branch=main diff --git a/package.json b/package.json index 0c0327d..fe35470 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { - "name": "@abhishek-nexgen-dev/fastkit", + "name": "@nexgenstudiodev/fastkit", "type": "commonjs", - "version": "2.0.0", + "version": "1.0.0", "description": "A modular, class-based toolkit for fast API development with TypeScript and Express.", "main": "dist/FastKit.js", "types": "dist/FastKit.d.ts", @@ -20,8 +20,8 @@ "start:dev": "ts-node-dev --respawn --transpile-only src/FastKit.ts", "format": "prettier --write 'src/**/*.{ts,tsx,js,json,md}'", "prepublishOnly": "npm run format && npm run lint && npm run build", - "publish:npm": "npm publish --access public", - "publish:pnpm": "pnpm publish --access public", + "publish:npm": "npm publish --access public", + "publish:pnpm": "pnpm publish --access public --no-git-checks", "version:patch": "npm version patch", "version:minor": "npm version minor", "version:major": "npm version major", From 49dd84b60582c965311dc2b3d3f622521211c6c3 Mon Sep 17 00:00:00 2001 From: Abhishek Gupta Date: Fri, 27 Jun 2025 21:05:45 +0530 Subject: [PATCH 5/5] feat: Update package manager references and enable git checks in configuration --- .github/workflows/FUNDING.yml | 5 + .pnpmfile.mjs | 2 +- PACKAGE_MANAGERS.md | 212 ++++++++++++++++------------------ README.md | 28 +---- jest.config.json | 0 package.json | 2 +- 6 files changed, 111 insertions(+), 138 deletions(-) create mode 100644 .github/workflows/FUNDING.yml delete mode 100644 jest.config.json diff --git a/.github/workflows/FUNDING.yml b/.github/workflows/FUNDING.yml new file mode 100644 index 0000000..538b84d --- /dev/null +++ b/.github/workflows/FUNDING.yml @@ -0,0 +1,5 @@ +# FUNDING.yml + +github: abhishek-nexgen-dev +buymeacoffee: abhishek96z +open_collective: NexGenStudioDev \ No newline at end of file diff --git a/.pnpmfile.mjs b/.pnpmfile.mjs index 8aeb67b..95d66e8 100644 --- a/.pnpmfile.mjs +++ b/.pnpmfile.mjs @@ -12,7 +12,7 @@ export const hooks = { preferWorkspacePackages: true, sharedWorkspaceLockfile: true, publishBranch: 'master', - gitChecks: false, + gitChecks: true, } }, } diff --git a/PACKAGE_MANAGERS.md b/PACKAGE_MANAGERS.md index 04a455d..f3aba5c 100644 --- a/PACKAGE_MANAGERS.md +++ b/PACKAGE_MANAGERS.md @@ -1,166 +1,150 @@ # FastKit - Package Manager Usage Guide -This document explains how to use FastKit with both npm and pnpm package managers. +**FastKit** is a development toolkit that supports both `npm` and `pnpm` for installation, development, and publishing workflows. -## Installation +📦 Available on npm: +[@nexgenstudiodev/fastkit](https://www.npmjs.com/package/@nexgenstudiodev/fastkit) + +--- + +## 📥 Installation ### Using npm ```bash -npm install @abhishek-nexgen-dev/fastkit +npm install @nexgenstudiodev/fastkit ``` -### Using pnpm -```bash -pnpm add @abhishek-nexgen-dev/fastkit -``` -### Using yarn +### Using npm + ```bash -yarn add @abhishek-nexgen-dev/fastkit +pnpm add @nexgenstudiodev/fastkit ``` -## Development Scripts +### Using yarn -### For npm users ```bash -# Install dependencies -npm install - -# Build the project -npm run build - -# Clean build artifacts -npm run clean - -# Rebuild (clean + build) -npm run rebuild - -# Start development server -npm run start:dev +yarn add @nexgenstudiodev/fastkit +``` -# Format code -npm run format -# Lint code -npm run lint +# 🔧 Development Scripts -# Fix linting issues -npm run lint:fix +The following scripts are available via `npm run