binary-collections 2.0.11 → 2.0.12

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.
Files changed (225) hide show
  1. package/.opencode/package.json +5 -0
  2. package/binaries/rmx +15 -1
  3. package/binaries/rmx.cmd +12 -0
  4. package/binaries/test-cjs +9 -1
  5. package/binaries/test-cjs.cmd +16 -1
  6. package/binaries/test-esm +16 -0
  7. package/binaries/test-esm.cjs +178 -0
  8. package/binaries/test-esm.cmd +23 -0
  9. package/binaries/yarn-clean +1 -1
  10. package/binaries/yarn-clean.cmd +1 -1
  11. package/binaries/yarn-clean.py +33 -15
  12. package/binaries/yc +110 -0
  13. package/binaries/yc.cjs +178 -0
  14. package/lib/binary-collections/config.cjs +126 -0
  15. package/lib/binary-collections/config.mjs +7 -0
  16. package/lib/binary-collections/executeScript.cjs +19 -0
  17. package/lib/binary-collections/executeScript.d.cts +12 -0
  18. package/lib/binary-collections/executeScript.mjs +6 -0
  19. package/lib/binary-collections/findScript.cjs +284 -0
  20. package/lib/binary-collections/findScript.d.cts +12 -0
  21. package/lib/binary-collections/findScript.mjs +7 -0
  22. package/lib/binary-collections/listScript.cjs +266 -0
  23. package/lib/binary-collections/listScript.d.cts +19 -0
  24. package/lib/binary-collections/listScript.mjs +7 -0
  25. package/lib/binary-collections.cjs +224 -137
  26. package/lib/binary-collections.mjs +22 -282
  27. package/lib/changelog.cjs +2 -2
  28. package/lib/changelog.mjs +1 -1
  29. package/lib/{chunk-AJDD5DZM.mjs → chunk-2LSRSEXF.mjs} +1 -1
  30. package/lib/{chunk-Z6JLYU2J.mjs → chunk-5RTXZVCW.mjs} +2 -2
  31. package/lib/{chunk-XA3SNBPA.mjs → chunk-66KDU4TX.mjs} +93 -9
  32. package/lib/chunk-6PU7BAHB.mjs +61 -0
  33. package/lib/chunk-C6D2TTYU.mjs +32 -0
  34. package/lib/chunk-FB2WKVJD.mjs +158 -0
  35. package/lib/{chunk-NCXAP7AA.mjs → chunk-G5UUEWUO.mjs} +9 -5
  36. package/lib/{chunk-N436BNBK.mjs → chunk-GAGABICI.mjs} +19 -13
  37. package/lib/chunk-H44UWUFY.mjs +105 -0
  38. package/lib/chunk-NCZPTKDV.mjs +79 -0
  39. package/lib/chunk-NGFK3EYW.mjs +28 -0
  40. package/lib/chunk-NVEG3LEZ.mjs +143 -0
  41. package/lib/chunk-OGXVGBRI.mjs +29 -0
  42. package/lib/chunk-OXV52GD5.mjs +62 -0
  43. package/lib/chunk-PXBMHE7O.mjs +35 -0
  44. package/lib/chunk-R5FJOR63.mjs +47 -0
  45. package/lib/chunk-SPTECFE5.mjs +180 -0
  46. package/lib/chunk-UXCFNAR6.mjs +55 -0
  47. package/lib/chunk-V2IBPCEV.mjs +39 -0
  48. package/lib/chunk-XPJGCDOD.mjs +14 -0
  49. package/lib/chunk-ZOWVMII3.mjs +228 -0
  50. package/lib/clean-github-actions-caches-cli.cjs +465 -0
  51. package/lib/clean-github-actions-caches-cli.d.cts +1 -0
  52. package/lib/clean-github-actions-caches-cli.mjs +56 -0
  53. package/lib/clean-github-actions-caches.cjs +149 -205
  54. package/lib/clean-github-actions-caches.d.cts +15 -1
  55. package/lib/clean-github-actions-caches.mjs +4 -130
  56. package/lib/cross-env/command.cjs +63 -0
  57. package/lib/cross-env/command.d.ts +8 -0
  58. package/lib/cross-env/command.js +45 -0
  59. package/lib/cross-env/command.mjs +9 -0
  60. package/lib/cross-env/index.cjs +178 -0
  61. package/lib/cross-env/index.d.ts +8 -0
  62. package/lib/cross-env/index.js +102 -0
  63. package/lib/cross-env/index.mjs +101 -0
  64. package/lib/cross-env/variable.cjs +60 -0
  65. package/lib/cross-env/variable.d.ts +7 -0
  66. package/lib/cross-env/variable.js +59 -0
  67. package/lib/cross-env/variable.mjs +9 -0
  68. package/lib/del-gradle.cjs +2 -2
  69. package/lib/del-gradle.js +8 -8
  70. package/lib/del-gradle.mjs +1 -1
  71. package/lib/del-node-modules.js +24 -24
  72. package/lib/del-ps.cjs +2 -2
  73. package/lib/del-ps.js +8 -8
  74. package/lib/del-ps.mjs +1 -1
  75. package/lib/del-yarn-caches.cjs +2 -2
  76. package/lib/del-yarn-caches.js +2 -2
  77. package/lib/del-yarn-caches.mjs +1 -1
  78. package/lib/file/copy-cli.cjs +92 -0
  79. package/lib/file/copy-cli.d.mts +1 -0
  80. package/lib/file/copy-cli.mjs +55 -0
  81. package/lib/file/copy.cjs +56 -0
  82. package/lib/file/copy.d.mts +1 -0
  83. package/lib/file/copy.mjs +8 -0
  84. package/lib/file/move-cli.cjs +91 -0
  85. package/lib/file/move-cli.d.mts +1 -0
  86. package/lib/file/move-cli.mjs +55 -0
  87. package/lib/file/move.cjs +55 -0
  88. package/lib/file/move.d.mts +1 -0
  89. package/lib/file/move.mjs +8 -0
  90. package/lib/find-node-modules-cli.js +1 -1
  91. package/lib/free-chatgpt.cjs +21 -15
  92. package/lib/free-chatgpt.js +10 -10
  93. package/lib/free-chatgpt.mjs +2 -2
  94. package/lib/git/user-config.cjs +2 -2
  95. package/lib/git/user-config.mjs +2 -2
  96. package/lib/git-diff-cli.cjs +188 -42
  97. package/lib/git-diff-cli.mjs +5 -4
  98. package/lib/git-diff.cjs +188 -42
  99. package/lib/git-diff.d.ts +2 -1
  100. package/lib/git-diff.js +91 -34
  101. package/lib/git-diff.mjs +5 -4
  102. package/lib/git-fix.cjs +2 -2
  103. package/lib/git-fix.mjs +2 -2
  104. package/lib/git-purge.cjs +2 -2
  105. package/lib/git-purge.mjs +1 -1
  106. package/lib/index.d.ts +1 -1
  107. package/lib/kill-night-crows.cjs +7 -7
  108. package/lib/kill-night-crows.mjs +7 -7
  109. package/lib/node-cache-cleaner/npm.cjs +65 -0
  110. package/lib/node-cache-cleaner/npm.d.ts +2 -0
  111. package/lib/node-cache-cleaner/npm.js +41 -0
  112. package/lib/node-cache-cleaner/npm.mjs +10 -0
  113. package/lib/node-cache-cleaner/npx.cjs +89 -0
  114. package/lib/node-cache-cleaner/npx.d.ts +4 -0
  115. package/lib/node-cache-cleaner/npx.js +82 -0
  116. package/lib/{ps/index.d.mjs → node-cache-cleaner/npx.mjs} +6 -5
  117. package/lib/node-cache-cleaner/yarn.cjs +73 -0
  118. package/lib/node-cache-cleaner/yarn.d.ts +2 -0
  119. package/lib/node-cache-cleaner/yarn.js +62 -0
  120. package/lib/node-cache-cleaner/yarn.mjs +10 -0
  121. package/lib/node-cache-cleaner-cli.cjs +182 -0
  122. package/lib/node-cache-cleaner-cli.d.ts +2 -0
  123. package/lib/node-cache-cleaner-cli.js +60 -0
  124. package/lib/node-cache-cleaner-cli.mjs +56 -0
  125. package/lib/node-executor.cjs +91 -0
  126. package/lib/node-executor.d.cts +2 -0
  127. package/lib/node-executor.mjs +103 -0
  128. package/lib/npm-run-series.cjs +21 -28
  129. package/lib/npm-run-series.mjs +20 -6
  130. package/lib/package-resolutions-updater-cli.cjs +213 -128
  131. package/lib/package-resolutions-updater-cli.mjs +17 -39
  132. package/lib/package-resolutions-updater.cjs +204 -98
  133. package/lib/package-resolutions-updater.d.mts +20 -1
  134. package/lib/package-resolutions-updater.mjs +7 -5
  135. package/lib/print-directory-tree.cjs +2 -2
  136. package/lib/print-directory-tree.mjs +1 -1
  137. package/lib/ps/connected-domain.js +10 -10
  138. package/lib/ps/index.cjs +1 -1
  139. package/lib/ps/index.mjs +177 -171
  140. package/lib/ps/isWin.js +1 -1
  141. package/lib/ps/table-parser.js +6 -6
  142. package/lib/remove-module.cjs +2 -2
  143. package/lib/remove-module.mjs +1 -1
  144. package/lib/rm-node-module-cli.cjs +222 -0
  145. package/lib/rm-node-module-cli.d.cts +1 -0
  146. package/lib/rm-node-module-cli.mjs +89 -0
  147. package/lib/rm-node-modules.cjs +127 -0
  148. package/lib/rm-node-modules.d.cts +35 -0
  149. package/lib/{binary-collections-config.mjs → rm-node-modules.mjs} +3 -3
  150. package/lib/rmpath.cjs +2 -2
  151. package/lib/rmpath.mjs +1 -1
  152. package/lib/submodule-install.cjs +47 -34
  153. package/lib/submodule-install.mjs +46 -33
  154. package/lib/submodule-remove-cli.cjs +1 -2
  155. package/lib/submodule-remove-cli.js +3 -3
  156. package/lib/submodule-remove-cli.mjs +1 -2
  157. package/lib/utils/chatgpt.cjs +19 -13
  158. package/lib/utils/chatgpt.js +94 -94
  159. package/lib/utils/chatgpt.mjs +1 -1
  160. package/lib/utils/findEnvFiles.cjs +28 -46
  161. package/lib/utils/findEnvFiles.d.cts +19 -0
  162. package/lib/utils/findEnvFiles.mjs +3 -5
  163. package/lib/utils/findWorkspaceRoot.js +4 -4
  164. package/lib/utils/index.cjs +2 -2
  165. package/lib/utils/index.mjs +1 -1
  166. package/lib/utils/isGithubTokenValid.js +7 -7
  167. package/lib/{ps/index.d.cjs → utils/isWindows.cjs} +17 -3
  168. package/lib/utils/isWindows.d.ts +5 -0
  169. package/lib/utils/isWindows.js +10 -0
  170. package/lib/utils/isWindows.mjs +8 -0
  171. package/lib/utils/runBash.cjs +53 -0
  172. package/lib/utils/runBash.d.cts +12 -0
  173. package/lib/utils/runBash.mjs +66 -0
  174. package/lib/yarn-per-branch-lock-installer.cjs +97 -0
  175. package/lib/yarn-per-branch-lock-installer.d.cts +2 -0
  176. package/lib/yarn-per-branch-lock-installer.mjs +109 -0
  177. package/lib/yarn-reinstall.cjs +2 -2
  178. package/lib/yarn-reinstall.mjs +1 -1
  179. package/package.json +61 -52
  180. package/readme.html +784 -0
  181. package/readme.md +106 -218
  182. package/releases/readme.md +1 -1
  183. package/test/README.md +2 -2
  184. package/test-project/package.json +8 -2
  185. package/test-project/workspaces/workspace-a/package.json +135 -0
  186. package/test-project/workspaces/workspace-a/readme.md +20 -0
  187. package/test-project/workspaces/workspace-a/release/readme.md +42 -0
  188. package/test-project/workspaces/workspace-a/test/demo/package.json +25 -0
  189. package/test-project/workspaces/workspace-a/test/readme.md +12 -0
  190. package/test-project/workspaces/workspace-b/package.json +139 -0
  191. package/test-project/workspaces/workspace-b/readme.md +94 -0
  192. package/test-project/workspaces/workspace-b/requirements.txt +1 -0
  193. package/test-project/workspaces/workspace-b/test/sample-project/package.json +7 -0
  194. package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/package.json +96 -0
  195. package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/readme.md +156 -0
  196. package/tmp/rm-node-modules-test-project/package.json +17 -0
  197. package/tmp/rm-node-modules-test-project/packages/workspace-a/package.json +16 -0
  198. package/tmp/rm-node-modules-test-project/packages/workspace-b/package.json +16 -0
  199. package/tmp/test-repo/README.md +2 -35
  200. package/tmp/test-repo/package.json +13 -3
  201. package/docs-src/clean-github-actions-caches.md +0 -26
  202. package/docs-src/free-chatgpt.md +0 -26
  203. package/lib/binary-collections-config.cjs +0 -15
  204. package/lib/chunk-2CBJCW7E.mjs +0 -81
  205. package/lib/chunk-4UHL4WVN.mjs +0 -136
  206. package/lib/chunk-66PAU5PS.mjs +0 -31
  207. package/lib/chunk-6HHJRKFB.mjs +0 -59
  208. package/lib/chunk-7XTEJHOE.mjs +0 -193
  209. package/lib/chunk-FCDQGYBF.mjs +0 -136
  210. package/lib/chunk-GEYA2USY.mjs +0 -207
  211. package/lib/chunk-GJTGHXRA.mjs +0 -356
  212. package/lib/chunk-ID2WBTE2.mjs +0 -80
  213. package/lib/chunk-JXFOHKDM.mjs +0 -239
  214. package/lib/chunk-PDSXF5HY.mjs +0 -187
  215. package/lib/chunk-RWLXRTYP.mjs +0 -109
  216. package/lib/chunk-TOIVAQF7.mjs +0 -136
  217. package/lib/chunk-V5SKYJUB.mjs +0 -136
  218. package/lib/chunk-WSRETQCA.mjs +0 -59
  219. package/lib/chunk-YYLIQQKF.mjs +0 -31
  220. package/lib/ps/index.d.ts +0 -2
  221. package/lib/ps/index.js +0 -254
  222. package/lib/utils/findEnvFiles.d.ts +0 -8
  223. package/lib/utils/findEnvFiles.js +0 -121
  224. package/tmp/typedoc/readme.md +0 -320
  225. /package/lib/{binary-collections-config.d.cts → binary-collections/config.d.cts} +0 -0
package/readme.md CHANGED
@@ -1,59 +1,94 @@
1
- # Binary Collections
2
- A comprehensive toolkit of Node.js CLI utilities for streamlining development workflows. Includes tools for git operations, dependency management, build processes, automation, and more.
1
+ # 🚀 Binary Collections
3
2
 
4
- ## Features
3
+ A comprehensive toolkit of Node.js CLI utilities designed to streamline everyday development workflows.
5
4
 
6
- - 🧹 **Cleanup Tools**: Remove node_modules, yarn caches, gradle builds
7
- - 🔄 **Git Utilities**: Submodule management, repository purging, diff tools
8
- - 📦 **Build Tools**: NPM script runners, package management utilities
9
- - ⚡ **Development Helpers**: Process management, environment setup tools
5
+ It provides fast, lightweight commands for common tasks like git operations, dependency management, submodule handling, and running npm scripts in sequence or parallel—helping you reduce repetitive work and improve terminal productivity.
6
+
7
+ ## Features
8
+
9
+ * ⚡ **Git Workflow Utilities**
10
+ Streamline common Git tasks including diff enhancements, status automation, submodule management, and repository cleanup.
11
+
12
+ * 🧹 **Cleanup Tools**
13
+ Quickly remove `node_modules`, clear package manager caches (npm/yarn), and clean build artifacts such as Gradle outputs.
14
+
15
+ * 🔁 **Task Orchestration**
16
+ Run npm scripts sequentially or in parallel with improved control and execution clarity.
17
+
18
+ * 📁 **Repository & Submodule Automation**
19
+ Simplify initialization, syncing, and maintenance of Git submodules and multi-repository setups.
20
+
21
+ * 📦 **Build & Package Utilities**
22
+ Enhance NPM workflows with improved script execution, dependency handling, and resolution helpers.
23
+
24
+ * 🛠️ **Development Helpers**
25
+ General-purpose utilities for process management, environment setup, and file system operations.
26
+
27
+ * 🚀 **Performance-Focused CLI Design**
28
+ Lightweight, fast-executing commands designed to reduce friction and speed up everyday development tasks.
10
29
 
11
30
  ## Installation
12
31
 
13
- ### Clone Repository
14
- ```bash
15
- git clone -b master https://github.com/dimaslanjaka/bin bin
16
- ```
32
+ ### Option 1: NPM Package
33
+ Install locally to your project or globally for system-wide access.
17
34
 
18
- ### NPM Installation
19
35
  ```bash
20
- # Install locally
36
+ # Local installation
21
37
  npm install binary-collections
22
38
 
23
- # Install globally
39
+ # Global installation
24
40
  npm install binary-collections -g
25
41
 
26
- # Install from release archive
42
+ # Install from specific release archive
27
43
  npm install binary-collections@https://github.com/dimaslanjaka/bin/raw/master/releases/bin.tgz
28
44
  ```
29
45
 
30
- ### Direct run
46
+ ### Option 2: Direct Execution
47
+ Run without installing using `npx` or `yarn dlx`.
31
48
 
32
49
  ```bash
33
- # Yarn berry
50
+ # Using Yarn Berry
34
51
  yarn dlx binary-collections@https://raw.githubusercontent.com/dimaslanjaka/bin/master/releases/bin.tgz <command-name>
35
52
 
36
- # NPX
53
+ # Using NPX
37
54
  npx -y binary-collections@https://raw.githubusercontent.com/dimaslanjaka/bin/master/releases/bin.tgz <command-name>
38
55
  ```
39
56
 
40
- ## VSCode Setup
57
+ ### Option 3: Clone Repository
58
+ For development or manual setup.
41
59
 
42
- Create `.vscode/settings.json` to add binary tools to your PATH:
60
+ ```bash
61
+ git clone -b master https://github.com/dimaslanjaka/bin bin
62
+ ```
63
+
64
+ ## VSCode Integration
65
+
66
+ To make these tools available directly in your VSCode terminal, create or update `.vscode/settings.json`:
43
67
 
44
68
  ```jsonc
45
69
  {
46
70
  "terminal.integrated.env.linux": {
47
- "PATH": "${env:PATH}:${workspaceFolder}/node_modules/.bin:${workspaceFolder}/bin"
71
+ "PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/wsl/lib:${workspaceFolder}/bin:${workspaceFolder}/node_modules/.bin:${workspaceFolder}/vendor/bin",
72
+ "PUPPETEER_SKIP_DOWNLOAD": "true"
48
73
  },
49
74
  "terminal.integrated.env.windows": {
50
- "PATH": "${env:PATH};${workspaceFolder}\\node_modules\\.bin;${workspaceFolder}\\bin"
75
+ "PATH": "${env:LOCALAPPDATA}\\nvm;C:\\nvm4w\\nodejs;C:\\Program Files\\Git\\cmd;C:\\Program Files\\Git\\usr\\bin;${env:PATH};${workspaceFolder}\\node_modules\\.bin;${workspaceFolder}\\bin;${workspaceFolder}\\vendor\\bin;C:\\laragon\\bin\\mysql\\mysql-8.4.3-winx64\\bin;C:\\Users\\Dell\\AppData\\Local\\Programs\\Ollama",
76
+ "PUPPETEER_SKIP_DOWNLOAD": "true"
51
77
  },
52
78
  "terminal.integrated.profiles.windows": {
53
79
  "PowerShell": {
54
80
  "source": "PowerShell",
55
81
  "icon": "terminal-powershell"
56
82
  },
83
+ "Short PowerShell": {
84
+ "source": "PowerShell",
85
+ "args": [
86
+ "-NoExit",
87
+ "-Command",
88
+ "function prompt { \"[$((Get-Item .).Name)]> \" }"
89
+ ],
90
+ "icon": "terminal-powershell"
91
+ },
57
92
  "Command Prompt": {
58
93
  "path": [
59
94
  "${env:windir}\\Sysnative\\cmd.exe",
@@ -62,12 +97,25 @@ Create `.vscode/settings.json` to add binary tools to your PATH:
62
97
  "args": [],
63
98
  "icon": "terminal-cmd"
64
99
  },
100
+ "Short Command Prompt": {
101
+ "path": [
102
+ "${env:windir}\\System32\\cmd.exe"
103
+ ],
104
+ "args": [
105
+ "/k",
106
+ "prompt $p$_$g"
107
+ ],
108
+ "icon": "terminal-cmd"
109
+ },
65
110
  "Git Bash": {
66
111
  "source": "Git Bash"
67
112
  },
68
113
  "Cygwin": {
69
114
  "path": "C:\\cygwin64\\bin\\bash.exe",
70
- "args": ["--login", "-i"],
115
+ "args": [
116
+ "--login",
117
+ "-i"
118
+ ],
71
119
  "env": {
72
120
  "CHERE_INVOKING": "1"
73
121
  }
@@ -79,203 +127,42 @@ Create `.vscode/settings.json` to add binary tools to your PATH:
79
127
 
80
128
  ## Available Tools
81
129
 
82
- ### Quick Reference
83
-
84
- | Category | Commands | Description |
85
- |---|---|---|
86
- | **Git** | `git-purge`, `git-diff`, `git-fix`, `git-reduce-size` | Git repository management and optimization |
87
- | **Submodules** | `submodule`, `submodule-install`, `submodule-remove`, `submodule-token` | Git submodule operations |
88
- | **NPM Scripts** | `nrs`, `run-s`, `run-series`, `npm-run-series` | Run npm scripts in series with pattern matching |
89
- | **Package Mgmt** | `yarn-reinstall`, `pkg-resolutions-updater`, `pkg-res-updater` | Yarn/package resolutions management utilities |
90
- | **Node.js Dev** | `find-node-modules`, `find-nodemodules`, `dev`, `prod`, `empty` | Node.js development helpers |
91
- | **Process Mgmt** | `kill-process`, `nodekill`, `javakill`, `del-ps` | Process management and termination |
92
- | **File System** | `rmfind`, `rmpath`, `rmx`, `print-tree`, `dir-tree` | File system operations |
93
- | **Cleanup** | `del-nodemodules`, `del-yarncaches`, `del-gradle` | Cache and build directory cleanup |
94
- | **GitHub Actions** | `clean-github-actions-caches`, `clean-github-actions-cache`, `clear-github-actions-cache`, `clear-github-actions-caches`, `clear-gh-caches` | Remove old GitHub Actions caches, keep only latest |
95
-
96
- ### Git Tools
97
-
98
- #### Git Repository Purge
99
- Clean and optimize git repositories by pruning reflogs:
100
- ```bash
101
- git-purge
102
- ```
103
- ![Git purge screenshot](https://github.com/dimaslanjaka/bin/assets/12471057/2805c54e-28a7-491d-b381-de2593a854b3)
104
-
105
- #### Git Diff Utility
106
- Enhanced git diff functionality:
107
- ```bash
108
- git-diff
109
- ```
110
-
111
- #### Git Fix Utility
112
- Comprehensive Git configuration fixer for cross-platform development (replaces `git-fix-encoding`):
130
+ To view a complete list of available binaries, run:
113
131
  ```bash
114
- git-fix # Apply all fixes
115
- git-fix --lf-only # Force LF line endings only
116
- git-fix --permissions # Ignore file permissions only
117
- git-fix --normalize # Normalize existing files only
118
- git-fix --user # Configure Git user from environment
119
- git-fix --user NAME EMAIL # Configure Git user with specific values
120
- git-fix --user --update-remote # Also update remote URL to match user
121
- git-fix --user NAME EMAIL --update-remote # Configure user and update remote URL
132
+ binary-collections list
122
133
  ```
123
- Features:
124
- - Forces LF line endings (`core.autocrlf = false`)
125
- - Ignores file permission changes (`core.filemode = false`)
126
- - Sets pull strategy to false (prevents auto-rebase)
127
- - Normalizes existing line endings
128
- - Creates/updates `.gitattributes` with proper line ending rules
129
- - Configures Git user from environment variables or CLI arguments
130
- - **Non-interactive:** All configuration is now argument-driven; no interactive prompts
131
- - `--update-remote` flag: Update remote URL to match the configured user (for HTTPS remotes)
132
-
133
- User Configuration:
134
- - Environment variables: `GITHUB_USER`, `GITHUB_EMAIL`
135
- - CLI arguments take precedence over environment variables
136
- - Use `--update-remote` to update the remote URL with the configured user
137
- - Examples:
138
- ```bash
139
- git-fix --user "John Doe" "john@example.com" # Use CLI args
140
- git-fix --user --update-remote # Use env vars and update remote
141
- git-fix --user "Jane" "jane@example.com" --update-remote # CLI args and update remote
142
- GITHUB_USER="Jane" GITHUB_EMAIL="jane@example.com" git-fix --user # Use env vars
143
- ```
144
-
145
- #### Git Repository Size Reducer
146
- Reduce git repository size by cleaning up history:
147
- ```bash
148
- git-reduce-size
149
- ```
150
-
151
- #### Submodule Management
152
- - **`submodule`** - General submodule operations
153
- - **`submodule-install`** - Install and setup submodules
154
- - **`submodule-remove`** - Remove git submodules with interactive selection
155
- - **`submodule-token`** - Manage submodule tokens
156
-
157
- ![Submodule remover screenshot](https://github.com/user-attachments/assets/659c2fa3-f12f-45cb-a66f-aed3807e0023)
158
-
159
134
 
160
- ### NPM Script Runner
135
+ ### Quick Reference & Command Documentation
161
136
 
162
- **Binaries**: `nrs`, `run-s`, `run-series`, `npm-run-series`
137
+ | Category | Commands | Description | Docs |
138
+ |---|---|---|---|
139
+ | **Git** | `git-purge`, `git-diff`, `git-fix`, `git-reduce-size`, `git-undo` | Git repository management and optimization | [`git-purge.md`](./docs-src/git-purge.md), [`git-diff.md`](./docs-src/git-diff.md), [`git-fix.md`](./docs-src/git-fix.md), [`git-reduce-size.md`](./docs-src/git-reduce-size.md), [`git-undo.md`](./docs-src/git-undo.md) |
140
+ | **Submodules** | `submodule`, `submodule-install`, `submodule-remove`, `submodule-token` | Git submodule operations | [`submodule-install.md`](./docs-src/submodule-install.md), [`submodule-remove.md`](./docs-src/submodule-remove.md), [`submodule-token.md`](./docs-src/submodule-token.md) |
141
+ | **NPM Scripts** | `nrs`, `run-s`, `run-series`, `npm-run-series` | Run npm scripts in series with pattern matching | [`npm-run-series.md`](./docs-src/npm-run-series.md) |
142
+ | **Package Mgmt** | `yarn-reinstall`, `pkg-resolutions-updater`, `pkg-res-updater`, `yarn-install`, `yarn-clean` | Yarn/package resolutions management utilities | [`yarn-reinstall.md`](./docs-src/yarn-reinstall.md), [`yarn-install.md`](./docs-src/yarn-install.md), [`yarn-clean.md`](./docs-src/yarn-clean.md), [`package-resolutions-updater.md`](./docs-src/package-resolutions-updater.md) |
143
+ | **Node.js Dev** | `find-node-modules`, `find-nodemodules`, `dev`, `prod`, `empty`, `node-cache-cleaner`, `node-executor`, `py` | Node.js development helpers | [`find-node-modules.md`](./docs-src/find-node-modules.md), [`env-helpers.md`](./docs-src/env-helpers.md), [`node-cache-cleaner.md`](./docs-src/node-cache-cleaner.md), [`node-executor.md`](./docs-src/node-executor.md), [`py.md`](./docs-src/py.md) |
144
+ | **Process Mgmt** | `kill-process`, `nodekill`, `javakill`, `del-ps`, `kill-night-crows` | Process management and termination | [`del-ps.md`](./docs-src/del-ps.md), [`kill-night-crows.md`](./docs-src/kill-night-crows.md) |
145
+ | **File System** | `rmfind`, `rmpath`, `rmx`, `print-tree`, `dir-tree`, `copy`, `move`, `remove-module`, `rm-node-modules` | File system operations | [`copy-move-file.md`](./docs-src/copy-move-file.md), [`rmpath.md`](./docs-src/rmpath.md), [`rmfind-rmx.md`](./docs-src/rmfind-rmx.md), [`print-directory-tree.md`](./docs-src/print-directory-tree.md), [`remove-module.md`](./docs-src/remove-module.md), [`rm-node-modules.md`](./docs-src/rm-node-modules.md) |
146
+ | **Cleanup** | `del-nodemodules`, `del-yarncaches`, `del-gradle`, `del-yarn-caches`, `yarn-clean` | Cache and build directory cleanup | [`del-node-modules.md`](./docs-src/del-node-modules.md), [`del-yarn-caches.md`](./docs-src/del-yarn-caches.md), [`del-gradle.md`](./docs-src/del-gradle.md), [`yarn-clean.md`](./docs-src/yarn-clean.md) |
147
+ | **GitHub Actions** | `clean-github-actions-caches`, `clean-github-actions-cache`, `clear-github-actions-cache`, `clear-github-actions-caches`, `clear-gh-caches` | Remove old GitHub Actions caches, keep only latest | [`clean-github-actions-caches.md`](./docs-src/clean-github-actions-caches.md) |
148
+ | **Other** | `binary-collections`, `changelog`, `php-cs-fixer-staged`, `free-chatgpt`, `test-runners`, `package-resolutions-updater` | Miscellaneous utilities and documentation | [`binary-collections.md`](./docs-src/binary-collections.md), [`changelog.md`](./docs-src/changelog.md), [`php-cs-fixer-staged.md`](./docs-src/php-cs-fixer-staged.md), [`free-chatgpt.md`](./docs-src/free-chatgpt.md), [`test-runners.md`](./docs-src/test-runners.md), [`package-resolutions-updater.md`](./docs-src/package-resolutions-updater.md) |
163
149
 
164
- Run multiple npm scripts in series with pattern matching support.
165
-
166
- #### Options
167
- | Flag | Description |
168
- |---------------------|---------------------------------------------|
169
- | `--yarn` | Use `yarn run <script-name>` instead of npm |
170
- | `--verbose`, `-v` | Enable verbose output |
171
-
172
- #### Example
173
- Execute all scripts matching the pattern `namescript:**`:
174
- ```json
175
- {
176
- "name": "package-name",
177
- "version": "0.0.0",
178
- "private": true,
179
- "scripts": {
180
- "namescript:xx": "echo xx",
181
- "namescript:xxx": "echo xxx",
182
- "namescript:xxxx": "echo xxxx",
183
- "namescript:xxxxx": "echo xxxxx",
184
- "namescript": "nrs --yarn=true --verbose=true \"namescript:**\""
185
- },
186
- "license": "ISC"
187
- }
188
- ```
189
-
190
- ### Package Management Tools
191
-
192
- #### Yarn Package Reinstaller
193
- Reinstall yarn packages with dependency type flags:
194
- ```bash
195
- yarn-reinstall <packageName> [--dev|-D|--peer|-P|--optional|-O]
196
- ```
197
-
198
- #### Package Resolutions Manager
199
- Manage package resolutions in package.json (aliases: `pkg-resolutions-updater`, `pkg-res-updater`):
200
- ```bash
201
- pkg-resolutions-updater
202
- pkg-res-updater
203
- ```
204
-
205
- ### Node.js Development Tools
206
-
207
- #### Node Modules Finder
208
- Find all node_modules directories in a project:
209
- ```bash
210
- find-node-modules # Library function
211
- find-node-modules-cli # CLI tool
212
- find-nodemodules # Alias
213
- ```
214
-
215
- #### Development Environment Helpers
216
- - **`dev`** - Development environment setup
217
- - **`prod`** - Production environment setup
218
- - **`empty`** - Empty utility tool
219
-
220
- ### Process Management Tools
221
-
222
- #### Process Killers
223
- Kill processes by name or pattern:
224
- ```bash
225
- kill-process # General process killer
226
- nodekill # Kill Node.js processes
227
- javakill # Kill Java processes (Windows)
228
- del-ps # Kill processes by command name
229
- ```
230
-
231
- #### File System Tools
232
- - **`rmfind`** - Find and remove files
233
- - **`rmpath`** - Remove from PATH
234
- - **`rmx`** - Remove executable files
235
-
236
- ### Cleanup Tools
237
-
238
- #### GitHub Actions Cache Cleaner
239
- [See full documentation](./docs-src/clean-github-actions-caches.md).
240
-
241
- #### Node Modules Cleaner
242
- Remove node_modules directories recursively:
243
- ```bash
244
- del-nodemodules # Primary command
245
- del-node-modules # Alternative
246
- clean-nodemodule # Legacy
247
- clean-nodemodules # Legacy
248
- ```
249
- ![Node modules cleaner screenshot](https://github.com/dimaslanjaka/bin/assets/12471057/f03e5b51-1808-4e82-a474-0dd3c7eab5fe)
250
-
251
- #### Yarn Cache Cleaner
252
- Clear yarn cache directories:
253
- ```bash
254
- del-yarncaches # Primary command
255
- del-yarn-caches # Alternative
256
- ```
257
-
258
- #### Gradle Build Cleaner
259
- Delete gradle build folders:
260
- ```bash
261
- del-gradle
262
- ```
263
-
264
- #### Free ChatGPT automation tool
265
-
266
- [See full documentation](./docs-src/free-chatgpt.md)
150
+ ---
267
151
 
268
152
  ## Troubleshooting
269
153
 
270
154
  ### Submodule Installation Issues
271
- If you encounter the following error:
155
+
156
+ **Error:**
272
157
  ```log
273
158
  fatal: 'origin/<branch>' is not a commit and a branch '<branch>' cannot be created from it
274
159
  fatal: unable to checkout submodule '<folder>/<submodule>'
275
160
  ```
276
- **Solution**: Delete `.git/modules` directory before running `submodule-install`.
277
161
 
278
- #### Complete Submodule Setup Example
162
+ **Solution:**
163
+ Delete the `.git/modules` directory before running `submodule-install`.
164
+
165
+ **Complete Reset & Install:**
279
166
  ```bash
280
167
  echo "Initializing submodules..."
281
168
  git submodule init
@@ -290,25 +177,26 @@ npx --yes rimraf .git/modules
290
177
  npx --yes binary-collections@https://raw.githubusercontent.com/dimaslanjaka/bin/master/releases/bin.tgz submodule-install
291
178
  ```
292
179
 
293
- ## Binary List Generation & Source Code (Development)
180
+ ## Development
181
+
182
+ ### Test Local Command Executor
183
+
184
+ When developing locally, to test the bundled executor run `bc <commandName>` (use `bin/bc` on Unix or `bin/bc.cmd` on Windows). Its usage is the same as `binary-collections <commandName>` but intended only for development and testing.
294
185
 
295
- The list of available binaries and utilities is auto-generated by the build script ([`build.mjs`](./build.mjs)).
296
- - All CLI tools and binaries are collected from the `bin/`, `lib/`, and other relevant folders.
297
- - The build process updates the `bin` field in `package.json` to reflect all available executables.
298
- - Source code for utilities is located in the `src/` folder.
186
+ ### Command List Generation
187
+ The list of available binaries is auto-generated by [`build.mjs`](./build.mjs). This script scans `bin/`, `lib/`, and updates the `bin` field in `package.json`.
299
188
 
300
- To update the binary list, run:
189
+ To update the binary list:
301
190
  ```bash
302
191
  yarn run build
303
192
  # or
304
193
  node build.mjs
305
194
  ```
306
- This scans the project and updates `package.json` with all available binaries. The list may change as files are added or removed.
307
195
 
308
- See also:
309
- - [Binary executables](https://github.com/dimaslanjaka/bin/tree/master/bin)
310
- - [Library modules](https://github.com/dimaslanjaka/bin/tree/master/lib)
311
- - [Package configuration](https://github.com/dimaslanjaka/bin/blob/master/package.json)
196
+ ### Project Structure
197
+ - **Source Code**: Located in the `src/` folder.
198
+ - **Binaries**: Executable scripts located in `bin/`.
199
+ - **Libraries**: Reusable modules in `lib/`.
312
200
 
313
201
  ## Contributing
314
202
 
@@ -316,4 +204,4 @@ Contributions are welcome! Please feel free to submit a Pull Request.
316
204
 
317
205
  ## License
318
206
 
319
- This project is licensed under the terms specified in the LICENSE file.
207
+ This project is licensed under the terms specified in the [LICENSE](./LICENSE) file.
@@ -2,7 +2,7 @@
2
2
  ## Releases
3
3
  | version | tarball url |
4
4
  | :--- | :--- |
5
- | latest | https://github.com/dimaslanjaka/bin/raw/6b683c8/releases/bin.tgz |
5
+ | latest | https://github.com/dimaslanjaka/bin/raw/22ac0e3/releases/bin.tgz |
6
6
  | latest | https://github.com/dimaslanjaka/bin/raw/master/releases/bin.tgz |
7
7
 
8
8
  use this tarball with `resolutions`:
package/test/README.md CHANGED
@@ -66,10 +66,10 @@ yarn test git-user-config.test.js
66
66
  yarn test git-fix-integration.test.js
67
67
 
68
68
  # Run with coverage
69
- yarn test:coverage
69
+ yarn test-coverage
70
70
 
71
71
  # Run in watch mode
72
- yarn test:watch
72
+ yarn test-watch
73
73
  ```
74
74
 
75
75
  ## Test Coverage
@@ -4,13 +4,19 @@
4
4
  "description": "Test project for binary-collections",
5
5
  "main": "index.js",
6
6
  "scripts": {
7
- "init-lock": "echo > yarn.lock"
7
+ "init-lock": "echo > yarn.lock",
8
+ "init-workspace": "node init-workspace.cjs"
8
9
  },
9
10
  "keywords": [],
10
11
  "author": "dimaslanjaka@gmail.com",
11
12
  "license": "MIT",
13
+ "workspaces": [
14
+ "packages/*",
15
+ "workspaces/*"
16
+ ],
12
17
  "dependencies": {
13
- "binary-collections": "file:../releases/bin.tgz"
18
+ "binary-collections": "file:../releases/bin.tgz",
19
+ "cross-spawn": "https://github.com/dimaslanjaka/node-cross-spawn/raw/80999ac7a7031a81e11ddb5fab0f8ba433041c98/release/cross-spawn.tgz"
14
20
  },
15
21
  "packageManager": "yarn@4.9.2"
16
22
  }
@@ -0,0 +1,135 @@
1
+ {
2
+ "name": "hexo-is",
3
+ "version": "2.0.3",
4
+ "description": "Determine whether current hexo data is",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "type": "module",
8
+ "module": "dist/index.mjs",
9
+ "exports": {
10
+ ".": {
11
+ "require": {
12
+ "default": "./dist/index.cjs",
13
+ "types": "./dist/index.d.cts"
14
+ },
15
+ "import": {
16
+ "default": "./dist/index.mjs",
17
+ "types": "./dist/index.d.mts"
18
+ }
19
+ }
20
+ },
21
+ "files": [
22
+ "dist/"
23
+ ],
24
+ "scripts": {
25
+ "test": "npx jest --runInBand --forceExit --detectOpenHandles --testTimeout=30000",
26
+ "test:index": "node test/index.js",
27
+ "build": "tsc && rollup -c",
28
+ "clean": "npx rimraf dist && npm run build",
29
+ "postbuild": "node packer.cjs",
30
+ "update": "npx npm-check-updates -u -x chalk",
31
+ "pack": "node packer.cjs --yarn",
32
+ "prepare": "husky"
33
+ },
34
+ "keywords": [],
35
+ "repository": {
36
+ "type": "git",
37
+ "url": "https://github.com/dimaslanjaka/hexo-is"
38
+ },
39
+ "homepage": "https://github.com/dimaslanjaka/hexo-is",
40
+ "author": {
41
+ "email": "dimaslanjaka@gmail.com",
42
+ "name": "Dimas Lanjaka",
43
+ "url": "https://github.com/dimaslanjaka"
44
+ },
45
+ "license": "MIT",
46
+ "workspaces": [
47
+ "test/demo",
48
+ "test/demo/themes/*"
49
+ ],
50
+ "dependencies": {
51
+ "deepmerge-ts": "^7.1.5",
52
+ "fs-extra": "^11.3.0",
53
+ "hexo-log": "^4.1.0",
54
+ "minimatch": "^10.0.3",
55
+ "sbg-utility": "^2.0.11",
56
+ "upath": "^2.0.1",
57
+ "yaml": "^2.8.0"
58
+ },
59
+ "devDependencies": {
60
+ "@babel/core": "^7.28.0",
61
+ "@babel/plugin-transform-runtime": "^7.28.0",
62
+ "@babel/preset-env": "^7.28.0",
63
+ "@babel/preset-typescript": "^7.27.1",
64
+ "@babel/runtime": "^7.24.0",
65
+ "@eslint/eslintrc": "^3.3.1",
66
+ "@eslint/js": "^9.31.0",
67
+ "@jest/environment": "^30.0.5",
68
+ "@jest/expect": "^30.0.5",
69
+ "@jest/globals": "^30.0.5",
70
+ "@jest/types": "^30.0.5",
71
+ "@rollup/plugin-babel": "^6.0.4",
72
+ "@rollup/plugin-commonjs": "^28.0.6",
73
+ "@rollup/plugin-json": "^6.1.0",
74
+ "@rollup/plugin-node-resolve": "^16.0.1",
75
+ "@types/babel__core": "^7",
76
+ "@types/babel__preset-env": "^7",
77
+ "@types/fs-extra": "^11.0.4",
78
+ "@types/gulp": "^4.0.17",
79
+ "@types/jest": "^30.0.0",
80
+ "@types/node": "^24.0.15",
81
+ "@typescript-eslint/eslint-plugin": "^8.38.0",
82
+ "@typescript-eslint/parser": "^8.38.0",
83
+ "binary-collections": "^2.0.10",
84
+ "cross-spawn": "https://github.com/dimaslanjaka/node-cross-spawn/raw/private/release/cross-spawn.tgz",
85
+ "eslint": "^9.31.0",
86
+ "eslint-config-prettier": "^10.1.8",
87
+ "eslint-plugin-prettier": "^5.5.3",
88
+ "git-command-helper": "^2.0.2",
89
+ "globals": "^16.3.0",
90
+ "gulp": "^5.0.1",
91
+ "gulp-cli": "^3.1.0",
92
+ "hexo": "*",
93
+ "husky": "^9.1.7",
94
+ "jest": "^30.0.5",
95
+ "jest-config": "^30.0.5",
96
+ "jest-mock": "^30.0.5",
97
+ "lint-staged": "^16.1.2",
98
+ "nodemon": "^3.1.10",
99
+ "prettier": "^3.6.2",
100
+ "rimraf": "^6.0.1",
101
+ "rollup": "^4.45.1",
102
+ "rollup-plugin-dts": "^6.2.1",
103
+ "ts-jest": "^29.4.0",
104
+ "ts-node": "^10.9.2",
105
+ "typescript": "^5.8.3"
106
+ },
107
+ "resolutions": {
108
+ "@types/git-command-helper": "https://github.com/dimaslanjaka/git-command-helper/raw/40f673205b55bd451a689079b47fde804ce14559/release/git-command-helper.tgz",
109
+ "@types/hexo": "https://github.com/dimaslanjaka/hexo/raw/f6cfb62f67fc161f569ade3781c30afa5bae9def/releases/hexo.tgz",
110
+ "binary-collections": "https://github.com/dimaslanjaka/bin/raw/973b914e88194afc04935628e9901e76bf7eb5fd/releases/bin.tgz",
111
+ "cross-spawn": "https://github.com/dimaslanjaka/node-cross-spawn/raw/80999ac7a7031a81e11ddb5fab0f8ba433041c98/release/cross-spawn.tgz",
112
+ "git-command-helper": "https://github.com/dimaslanjaka/git-command-helper/raw/40f673205b55bd451a689079b47fde804ce14559/release/git-command-helper.tgz",
113
+ "hexo": "https://github.com/dimaslanjaka/hexo/raw/f6cfb62f67fc161f569ade3781c30afa5bae9def/releases/hexo.tgz",
114
+ "hexo-asset-link": "https://github.com/dimaslanjaka/hexo/raw/f6cfb62f67fc161f569ade3781c30afa5bae9def/releases/hexo-asset-link.tgz",
115
+ "hexo-cli": "https://github.com/dimaslanjaka/hexo/raw/f6cfb62f67fc161f569ade3781c30afa5bae9def/releases/hexo-cli.tgz",
116
+ "hexo-front-matter": "https://github.com/dimaslanjaka/hexo/raw/f6cfb62f67fc161f569ade3781c30afa5bae9def/releases/hexo-front-matter.tgz",
117
+ "hexo-generator-redirect": "https://github.com/dimaslanjaka/hexo-generator-redirect/raw/a2e390c496954e7883218b9b82a09972c7507c10/release/hexo-generator-redirect.tgz",
118
+ "hexo-log": "https://github.com/dimaslanjaka/hexo/raw/f6cfb62f67fc161f569ade3781c30afa5bae9def/releases/hexo-log.tgz",
119
+ "hexo-post-parser": "https://github.com/dimaslanjaka/hexo-post-parser/raw/1fd5dc629349e028c7ce574b176db5970e0327eb/release/hexo-post-parser.tgz",
120
+ "hexo-renderers": "https://github.com/dimaslanjaka/hexo-renderers/raw/b2f64c979babe3f89d225aff3a7d5267949124a5/release/hexo-renderers.tgz",
121
+ "hexo-seo": "https://github.com/dimaslanjaka/hexo-seo/raw/ebf24f48bcc00ae14f4961ca0bad5c4a418fd5ac/release/hexo-seo.tgz",
122
+ "hexo-server": "https://github.com/dimaslanjaka/hexo/raw/f6cfb62f67fc161f569ade3781c30afa5bae9def/releases/hexo-server.tgz",
123
+ "hexo-shortcodes": "https://github.com/dimaslanjaka/hexo-shortcodes/raw/2ed1250d701369b8235a02b9af834bbfc62644a0/release/hexo-shortcodes.tgz",
124
+ "hexo-util": "https://github.com/dimaslanjaka/hexo/raw/f6cfb62f67fc161f569ade3781c30afa5bae9def/releases/hexo-util.tgz",
125
+ "instant-indexing": "https://github.com/dimaslanjaka/static-blog-generator/raw/f221d11cdc32fa7dd001e5236f8c3f30387e62d2/packages/instant-indexing/release/instant-indexing.tgz",
126
+ "markdown-it": "https://github.com/dimaslanjaka/markdown-it/raw/17ccc825cbb3e4c6d59edada5f6d93f27075d752/release/markdown-it.tgz",
127
+ "nodejs-package-types": "https://github.com/dimaslanjaka/nodejs-package-types/raw/99545d0c50ef58508605eff949d84dcb5c03d490/release/nodejs-package-types.tgz",
128
+ "sbg-api": "https://github.com/dimaslanjaka/static-blog-generator/raw/95400dd87106542a640092fa2073ee7d5c9b83e6/packages/sbg-api/release/sbg-api.tgz",
129
+ "sbg-cli": "https://github.com/dimaslanjaka/static-blog-generator/raw/4a6d2c0b2a7653402ccb87229fa2f074986e9ede/packages/sbg-cli/release/sbg-cli.tgz",
130
+ "sbg-server": "https://github.com/dimaslanjaka/static-blog-generator/raw/4a6d2c0b2a7653402ccb87229fa2f074986e9ede/packages/sbg-server/release/sbg-server.tgz",
131
+ "sbg-utility": "https://github.com/dimaslanjaka/static-blog-generator/raw/df939d4cb3e31fded39412534bcef11de9fe0dcc/packages/sbg-utility/release/sbg-utility.tgz",
132
+ "static-blog-generator": "https://github.com/dimaslanjaka/static-blog-generator/raw/4a6d2c0b2a7653402ccb87229fa2f074986e9ede/packages/static-blog-generator/release/static-blog-generator.tgz",
133
+ "warehouse": "https://github.com/dimaslanjaka/hexo/raw/f6cfb62f67fc161f569ade3781c30afa5bae9def/releases/warehouse.tgz"
134
+ }
135
+ }
@@ -0,0 +1,20 @@
1
+ # Determine hexo instance
2
+
3
+ > Where is you now ? page ? archive ? whatever
4
+
5
+ this plugin can be used to determine where you are from plugin hexo
6
+
7
+ # Usage
8
+
9
+ - full test: https://github.com/dimaslanjaka/hexo-is/tree/master/test
10
+
11
+ ```js
12
+ const { hexoIs } = require('hexo-is');
13
+ function where(content, data){
14
+ console.log(hexoIs(data));
15
+ }
16
+ hexo.extend.filter.register("after_render:js", where);
17
+ hexo.extend.filter.register("after_render:css", where);
18
+ hexo.extend.filter.register("after_render:html", where);
19
+ where.call(hexo, {/* any mock object data */});
20
+ ```
@@ -0,0 +1,42 @@
1
+ # Release `hexo-is` tarball
2
+ ## Releases
3
+ | version | tarball url |
4
+ | :--- | :--- |
5
+ | 1.0.4 | https://github.com/dimaslanjaka/hexo-is/raw/6c39e7d/release/hexo-is-1.0.4.tgz |
6
+ | 1.0.5 | https://github.com/dimaslanjaka/hexo-is/raw/be69f8d/release/hexo-is-1.0.5.tgz |
7
+ | 2.0.0 | https://github.com/dimaslanjaka/hexo-is/raw/d7dfef5/release/hexo-is-2.0.0.tgz |
8
+ | 2.0.1 | https://github.com/dimaslanjaka/hexo-is/raw/8c5c917/release/hexo-is-2.0.1.tgz |
9
+ | 2.0.2 | https://github.com/dimaslanjaka/hexo-is/raw/47d81d2/release/hexo-is-2.0.2.tgz |
10
+ | 2.0.3 | https://github.com/dimaslanjaka/hexo-is/raw/47d81d2/release/hexo-is-2.0.3.tgz |
11
+ | latest | https://github.com/dimaslanjaka/hexo-is/raw/47d81d2/release/hexo-is.tgz |
12
+ | latest | https://github.com/dimaslanjaka/hexo-is/raw/master/release/hexo-is.tgz |
13
+
14
+ use this tarball with `resolutions`:
15
+ ```json
16
+ {
17
+ "resolutions": {
18
+ "hexo-is": "<url of tarball>"
19
+ }
20
+ }
21
+ ```
22
+
23
+ ## Releases
24
+
25
+ ## Get URL of `hexo-is` Release Tarball
26
+ - select tarball file
27
+ ![gambar](https://user-images.githubusercontent.com/12471057/203216375-8af4b5d9-00c2-40fb-8d3d-d220beaabd46.png)
28
+ - copy raw url
29
+ ![gambar](https://user-images.githubusercontent.com/12471057/203216508-7590cbb9-a1ce-47d6-96ca-8d82149f0762.png)
30
+ - or copy download url
31
+ ![gambar](https://user-images.githubusercontent.com/12471057/203216541-3807d2c3-5213-49f3-b93d-c626dbae3b2e.png)
32
+ - then run installation from command line
33
+ ```bash
34
+ npm i https://....url-tgz
35
+ ```
36
+ for example
37
+ ```bash
38
+ npm i https://github.com/dimaslanjaka/nodejs-package-types/raw/main/release/nodejs-package-types.tgz
39
+ ```
40
+
41
+ ## URL Parts Explanations
42
+ > https://github.com/github-username/github-repo-name/raw/github-branch-name/path-to-file-with-extension