Przeglądaj źródła

打包,提交最新版本并发布

zxlie 6 miesięcy temu
rodzic
commit
93ba018ec4
5 zmienionych plików z 146 dodań i 80 usunięć
  1. 85 39
      README.md
  2. 1 1
      apps/manifest.json
  3. 59 36
      gulpfile.js
  4. BIN
      output/fehelper.zip
  5. 1 4
      package.json

+ 85 - 39
README.md

@@ -1,15 +1,28 @@
-FeHelper For Chrome&Firefox&MS-Edge
-=============================
+# FeHelper For Chrome, Firefox & MS-Edge
 
 
+FeHelper是一个功能强大的浏览器扩展,专为前端开发者设计,集成了多种实用工具,帮助开发者提高工作效率。无论是JSON数据处理、二维码生成与解码,还是代码美化与压缩,FeHelper都能为您提供便捷的解决方案。
 
 
 ![FeHelper](https://user-images.githubusercontent.com/865735/75407628-7399c580-594e-11ea-8ef2-00adf39d61a8.jpg)
 ![FeHelper](https://user-images.githubusercontent.com/865735/75407628-7399c580-594e-11ea-8ef2-00adf39d61a8.jpg)
 
 
 [![Google Chrome](https://img.shields.io/chrome-web-store/v/pkgccpejnmalmdinmhkkfafefagiiiad.svg?logo=Google%20Chrome&logoColor=red&color=blue)](https://chrome.google.com/webstore/detail/pkgccpejnmalmdinmhkkfafefagiiiad)
 [![Google Chrome](https://img.shields.io/chrome-web-store/v/pkgccpejnmalmdinmhkkfafefagiiiad.svg?logo=Google%20Chrome&logoColor=red&color=blue)](https://chrome.google.com/webstore/detail/pkgccpejnmalmdinmhkkfafefagiiiad)
 [![Google Chrome](https://img.shields.io/chrome-web-store/stars/pkgccpejnmalmdinmhkkfafefagiiiad.svg?logo=Google%20Chrome&logoColor=red&color=blue)](https://chrome.google.com/webstore/detail/pkgccpejnmalmdinmhkkfafefagiiiad)
 [![Google Chrome](https://img.shields.io/chrome-web-store/stars/pkgccpejnmalmdinmhkkfafefagiiiad.svg?logo=Google%20Chrome&logoColor=red&color=blue)](https://chrome.google.com/webstore/detail/pkgccpejnmalmdinmhkkfafefagiiiad)
-[![Google Chrome](https://img.shields.io/chrome-web-store/users/pkgccpejnmalmdinmhkkfafefagiiiad.svg?logo=Google%20Chrome&logoColor=red&color=blue)](https://chrome.google.com/webstore/detail/pkgccpejnmalmdinmhkkfafefagiiiad)    
+[![Google Chrome](https://img.shields.io/chrome-web-store/users/pkgccpejnmalmdinmhkkfafefagiiiad.svg?logo=Google%20Chrome&logoColor=red&color=blue)](https://chrome.google.com/webstore/detail/pkgccpejnmalmdinmhkkfafefagiiiad)
 
 
+## 一、功能展示
 
 
-## 一、官网地址
+![Web前端助手-FeHelper](https://user-images.githubusercontent.com/865735/75407048-020d4780-594d-11ea-9dd6-48f6d5774c2f.png)
+
+## 二、贡献指南
+
+我们欢迎社区的贡献!如果您有兴趣参与FeHelper的开发,请按照以下步骤进行:
+
+1. Fork本仓库并克隆到本地。
+2. 创建一个新的分支:`git checkout -b feature/YourFeature`
+3. 提交您的更改:`git commit -m 'Add some feature'`
+4. 推送到分支:`git push origin feature/YourFeature`
+5. 创建一个Pull Request。
+
+## 三、官网地址
 https://www.baidufe.com/fehelper/index/index.html
 https://www.baidufe.com/fehelper/index/index.html
 
 
 ### 1、扩展示例
 ### 1、扩展示例
@@ -23,8 +36,39 @@ https://www.baidufe.com/fehelper/index/index.html
 
 
 ![FeHelper新版](https://user-images.githubusercontent.com/865735/75334978-b5315e80-58c3-11ea-9af0-e593149b0f7c.png)
 ![FeHelper新版](https://user-images.githubusercontent.com/865735/75334978-b5315e80-58c3-11ea-9af0-e593149b0f7c.png)
 
 
+## 四、功能详细介绍
+
+FeHelper是一个功能强大的开发者工具,专为前端开发者设计,集成了多种实用工具,帮助开发者提高工作效率。以下是FeHelper的主要功能:
+
+- **JSON工具**: 
+  - **JSON美化工具**:自动检测并格式化JSON数据,支持手动格式化、乱码解码、排序、BigInt处理、编辑、下载和皮肤定制等功能,极大地方便了开发者对JSON数据的处理。
+  - **JSON比对工具**:支持两个JSON内容的自动键值比较,并高亮显示差异点,帮助开发者快速识别数据变化。
 
 
-## 二、扩展安装地址:
+- **二维码工具**: 
+  - **二维码生成器**:支持自定义颜色和icon的二维码生成,适用于多种应用场景。
+  - **二维码解码器**:支持多种模式的二维码解码,包括截图后粘贴解码,方便快捷。
+
+- **编码工具**: 
+  - **字符串编解码**:支持多格式的信息编解码,如Unicode、UTF-8、URL、Base64、MD5等,满足不同编码需求。
+  - **代码美化工具**:支持多语言的代码美化,包括Javascript、CSS、HTML、XML、SQL,帮助开发者保持代码整洁。
+  - **代码压缩工具**:提供简单的代码压缩功能,支持HTML、Javascript、CSS代码压缩,优化网页加载速度。
+
+- **开发者工具**: 
+  - **AI助手**:由AI强力支撑的超智能对话工具,支持代码编写、改代码、做方案设计等,提升开发效率。
+  - **简易Postman**:接口调试工具,支持GET/POST/HEAD请求方式,自动格式化JSON内容,简化API测试流程。
+  - **Websocket工具**:支持对Websocket接口的抓包测试,包括ws服务的连接测试、消息发送测试、结果分析等。
+
+- **其他工具**: 
+  - **时间(戳)转换**:本地化时间与时间戳之间的相互转换,支持秒/毫秒、世界时区切换、各时区时钟展示等。
+  - **随机密码生成**:将各种字符进行随机组合生成密码,支持指定长度和字符类型,确保密码安全性。
+  - **我的便签笔记**:便签笔记工具,支持创建目录对笔记进行分类管理,笔记支持一键导出/导入,方便信息管理。
+  - **Markdown转换**:Markdown编写/预览工具,支持HTML片段直接转Markdown,支持将内容以PDF格式进行下载。
+  - **网页截屏工具**:可对任意网页进行截屏,支持可视区域截屏、全网页滚动截屏,最终结果可预览后再保存。
+  - **页面取色工具**:可直接在网页上针对任意元素进行色值采集,将光标移动到需要取色的位置,单击确定即可。
+
+FeHelper不仅功能强大,而且易于使用,是前端开发者的得力助手。更多工具和详细介绍请访问[FeHelper官网](https://www.baidufe.com/fehelper/index/index.html)。
+
+## 五、扩展安装地址
 
 
 ### 1、Chrome web store地址(推荐)
 ### 1、Chrome web store地址(推荐)
 https://chrome.google.com/webstore/detail/pkgccpejnmalmdinmhkkfafefagiiiad?hl=zh-cn
 https://chrome.google.com/webstore/detail/pkgccpejnmalmdinmhkkfafefagiiiad?hl=zh-cn
@@ -38,7 +82,6 @@ https://microsoftedge.microsoft.com/addons/detail/feolnkbgcbjmamimpfcnklggdcbgak
 
 
 - 如果你在使用Microsoft Edge浏览器的话,`可以直接安装`,不用翻墙
 - 如果你在使用Microsoft Edge浏览器的话,`可以直接安装`,不用翻墙
 
 
-
 ### 3、Firefox Add-ons
 ### 3、Firefox Add-ons
 - FeHelper官网一键安装: https://www.baidufe.com/fehelper/index/index.html
 - FeHelper官网一键安装: https://www.baidufe.com/fehelper/index/index.html
 - GitHub下载xpi安装:[点击进入下载页](/apps/static/screenshot/xpi)
 - GitHub下载xpi安装:[点击进入下载页](/apps/static/screenshot/xpi)
@@ -48,43 +91,46 @@ https://microsoftedge.microsoft.com/addons/detail/feolnkbgcbjmamimpfcnklggdcbgak
 - 翻墙下载:https://chrome-extension-downloader.com/?extension=pkgccpejnmalmdinmhkkfafefagiiiad
 - 翻墙下载:https://chrome-extension-downloader.com/?extension=pkgccpejnmalmdinmhkkfafefagiiiad
 - 本站下载:[点击进入下载页](/apps/static/screenshot/crx)
 - 本站下载:[点击进入下载页](/apps/static/screenshot/crx)
 
 
+## 六、使用方法
+
+使用FeHelper时,请遵循以下最佳实践,以确保安全和高效:
 
 
-## 三、扩展功能:
-> FeHelper功能会逐渐增加,所有新的工具会自动出现在`FH应用市场`,查看介绍,可以直接去官网: https://www.baidufe.com/fehelper/index/index.html
-
-- JSON自动美化(页面自动检测并格式化)
-- JSON手动美化(粘贴文本、手动格式化)
-- JSON比对工具(支持左右两个JSON片段进行键值对比较)
-- 字符串编解码(Unicode/UTF8/Base64/MD5)
-- 代码美化工具(HTML/CSS/JS/XML/SQL)
-- 代码压缩工具(HTML/CSS/JS)
-- 二维码生成器(支持当前页面、图片、链接、选中的文字生成QrCode)
-- 二维码解码器(支持网页二维码`右键`解码)
-- ChatGPT工具(可以让它帮你写代码、查资料、做分析、甚至帮你画一幅画)
-- 简易Postman(Api接口测试,模拟HEAD/GET/POST方式)
-- 网页滚动截屏(将当前整个网页转为图片并保存)
-- Markdown转换(支持Markdown与HTML的互转)
-- 页面取色工具(滑动鼠标随意取色)
-- Js正则表达式(正则测试、常用正则列表)
-- 时间(戳)转换(Unix戳与本地时间的互转)
-- 图片Base64(任意图片转DataURI格式)
-- 随机密码生成(任意字符、任意长度、随机生成)
-- 多维小工具集(进制转换、RGB/HEX颜色转换、Crontab、还款计算器等)
-- 网页油猴工具(网页特效、网页定制、脚本注入、自动刷新等)
-- 我的便签笔记(便签笔记,支持导出)
-- Excel2Json(Excel转Json工具)
-- Websocket(ws://的抓包调试工具)
-- ... 更多工具,请去官网查看:https://www.baidufe.com/fehelper/index/index.html
-
-### 四、使用方法
-- iCON点击后的Popup窗口模式
-- 页面右键菜单模式
-
-### 五、用户反馈渠道
+1. **从可信来源安装**:
+   - 确保只从官方浏览器商店(如Chrome Web Store)安装FeHelper,以避免潜在的安全风险。
+
+2. **定期检查和更新**:
+   - 定期检查FeHelper的更新,以确保使用最新版本,获得最新的功能和安全修复。
+
+3. **管理权限**:
+   - 在安装FeHelper时,仔细查看所请求的权限,确保它们与扩展的功能相符。
+
+4. **安全使用**:
+   - 只安装必要的扩展,避免过多的扩展增加攻击面。
+
+5. **用户反馈和支持**:
+   - 如果在使用FeHelper时遇到问题或有建议,及时通过提供的反馈渠道联系开发者。
+
+通过遵循这些指南,您可以更安全、更高效地使用FeHelper,充分发挥其强大的功能。
+
+## 七、用户反馈渠道
 - 在线反馈:https://www.baidufe.com/fehelper/feedback.html
 - 在线反馈:https://www.baidufe.com/fehelper/feedback.html
 - Mail反馈:[email protected]
 - Mail反馈:[email protected]
 - Wechat反馈:398824681 <br>
 - Wechat反馈:398824681 <br>
 ![阿烈叔的个人微信](https://user-images.githubusercontent.com/865735/75407547-3cc3af80-594e-11ea-9abf-6168b94547a1.png)
 ![阿烈叔的个人微信](https://user-images.githubusercontent.com/865735/75407547-3cc3af80-594e-11ea-9abf-6168b94547a1.png)
 
 
-### 六、一些样例
+## 八、使用推荐与案例
+
+FeHelper在开发者社区中广受好评,以下是一些使用推荐和案例:
+
+1. **接口调试工具**: FeHelper被誉为强大的接口调试工具,支持模拟各种HTTP请求,保存cookie等信息,详情请参阅[CSDN博客](https://blog.csdn.net/fuhanghang/article/details/84592480)。
+
+2. **功能丰富的插件**: FeHelper支持多种浏览器,提供JSON格式化、代码美化与压缩等功能,更多信息请访问[CSDN博客](https://blog.csdn.net/weixin_42272869/article/details/124412501)。
+
+3. **前端开发测试利器**: FeHelper包含字符串编解码、代码美化、JSON格式化查看等前端实用工具,详见[博客园](https://www.cnblogs.com/oycyqr/p/8867362.html)。
+
+4. **网页源码压缩**: FeHelper在网页html源码压缩、css或javascript的压缩方面表现出色,更多内容在[阿里云开发者社区](https://developer.aliyun.com/article/710232)。
+
+5. **前端必备插件**: FeHelper被推荐为前端必备的Chrome插件,详情请查看[稀土掘金](https://juejin.cn/post/6854573211590836231)。
+
+## 九、一些样例
 - [点击进入查看>>](/apps/static/screenshot/crx)
 - [点击进入查看>>](/apps/static/screenshot/crx)

+ 1 - 1
apps/manifest.json

@@ -1,7 +1,7 @@
 {
 {
   "name": "FeHelper(前端助手)-Dev",
   "name": "FeHelper(前端助手)-Dev",
   "short_name": "FeHelper",
   "short_name": "FeHelper",
-  "version": "2025.04.0810",
+  "version": "2025.04.1110",
   "manifest_version": 3,
   "manifest_version": 3,
   "description": "JSON自动格式化、手动格式化,支持排序、解码、下载等,更多功能可在配置页按需安装!",
   "description": "JSON自动格式化、手动格式化,支持排序、解码、下载等,更多功能可在配置页按需安装!",
   "icons": {
   "icons": {

+ 59 - 36
gulpfile.js

@@ -17,26 +17,32 @@ let through = require('through2');
 let path = require('path');
 let path = require('path');
 let pretty = require('pretty-bytes');
 let pretty = require('pretty-bytes');
 let shell = require('shelljs');
 let shell = require('shelljs');
-let runSequence = require('run-sequence');
 
 
-gulp.task('clean', () => {
-    return gulp.src('output', {read: false}).pipe(clean({force: true}));
-});
+// 在Gulp 4.x中,runSequence已被移除,使用gulp.series和gulp.parallel代替
+// let runSequence = require('run-sequence');
 
 
-gulp.task('copy', () => {
+// 清理输出目录
+function cleanOutput() {
+    return gulp.src('output', {read: false, allowEmpty: true}).pipe(clean({force: true}));
+}
+
+// 复制静态资源
+function copyAssets() {
     return gulp.src(['apps/**/*.{gif,png,jpg,jpeg,cur,ico}', '!apps/static/screenshot/**/*']).pipe(copy('output'));
     return gulp.src(['apps/**/*.{gif,png,jpg,jpeg,cur,ico}', '!apps/static/screenshot/**/*']).pipe(copy('output'));
-});
+}
 
 
-gulp.task('json', () => {
+// 处理JSON文件
+function processJson() {
     return gulp.src('apps/**/*.json').pipe(jsonmin()).pipe(gulp.dest('output/apps'));
     return gulp.src('apps/**/*.json').pipe(jsonmin()).pipe(gulp.dest('output/apps'));
-});
+}
 
 
-gulp.task('html', () => {
+// 处理HTML文件
+function processHtml() {
     return gulp.src('apps/**/*.html').pipe(htmlmin({collapseWhitespace: true})).pipe(gulp.dest('output/apps'));
     return gulp.src('apps/**/*.html').pipe(htmlmin({collapseWhitespace: true})).pipe(gulp.dest('output/apps'));
-});
+}
 
 
 // 合并 & 压缩 js
 // 合并 & 压缩 js
-gulp.task('js', () => {
+function processJs() {
     let jsMerge = () => {
     let jsMerge = () => {
         return through.obj(function (file, enc, cb) {
         return through.obj(function (file, enc, cb) {
             let contents = file.contents.toString('utf-8');
             let contents = file.contents.toString('utf-8');
@@ -52,18 +58,17 @@ gulp.task('js', () => {
             };
             };
 
 
             contents = merge(file.path, contents);
             contents = merge(file.path, contents);
-            file.contents = new Buffer.from(contents);
+            file.contents = Buffer.from(contents);
             this.push(file);
             this.push(file);
             return cb();
             return cb();
         })
         })
     };
     };
 
 
     return gulp.src('apps/**/*.js').pipe(jsMerge()).pipe(uglifyjs()).pipe(gulp.dest('output/apps'));
     return gulp.src('apps/**/*.js').pipe(jsMerge()).pipe(uglifyjs()).pipe(gulp.dest('output/apps'));
-});
+}
 
 
 // 合并 & 压缩 css
 // 合并 & 压缩 css
-gulp.task('css', () => {
-
+function processCss() {
     let cssMerge = () => {
     let cssMerge = () => {
         return through.obj(function (file, enc, cb) {
         return through.obj(function (file, enc, cb) {
             let contents = file.contents.toString('utf-8');
             let contents = file.contents.toString('utf-8');
@@ -77,18 +82,17 @@ gulp.task('css', () => {
             };
             };
 
 
             contents = merge(file.path, contents);
             contents = merge(file.path, contents);
-            file.contents = new Buffer.from(contents);
+            file.contents = Buffer.from(contents);
             this.push(file);
             this.push(file);
             return cb();
             return cb();
         })
         })
     };
     };
 
 
     return gulp.src('apps/**/*.css').pipe(cssMerge()).pipe(uglifycss()).pipe(gulp.dest('output/apps'));
     return gulp.src('apps/**/*.css').pipe(cssMerge()).pipe(uglifycss()).pipe(gulp.dest('output/apps'));
-});
+}
 
 
 // 清理冗余文件,并且打包成zip,发布到chrome webstore
 // 清理冗余文件,并且打包成zip,发布到chrome webstore
-gulp.task('zip', () => {
-
+function zipPackage(cb) {
     // 读取manifest文件
     // 读取manifest文件
     let pathOfMF = './output/apps/manifest.json';
     let pathOfMF = './output/apps/manifest.json';
     let manifest = require(pathOfMF);
     let manifest = require(pathOfMF);
@@ -106,12 +110,12 @@ gulp.task('zip', () => {
     console.log('    当前版本:', manifest.version, '\t文件大小:', size);
     console.log('    当前版本:', manifest.version, '\t文件大小:', size);
     console.log('    去Chrome商店发布吧:https://chrome.google.com/webstore/devconsole');
     console.log('    去Chrome商店发布吧:https://chrome.google.com/webstore/devconsole');
     console.log('================================================================================\n\n');
     console.log('================================================================================\n\n');
-
-});
-
+    
+    cb();
+}
 
 
 // 打包ms-edge安装包
 // 打包ms-edge安装包
-gulp.task('edge', () => {
+function edgePackage(cb) {
     shell.exec('rm -rf output-edge && cp -r output output-edge && rm -rf output-edge/fehelper.zip');
     shell.exec('rm -rf output-edge && cp -r output output-edge && rm -rf output-edge/fehelper.zip');
 
 
     // 更新edge所需的配置文件
     // 更新edge所需的配置文件
@@ -133,11 +137,12 @@ gulp.task('edge', () => {
     console.log('    当前版本:', manifest.version, '\t文件大小:', size);
     console.log('    当前版本:', manifest.version, '\t文件大小:', size);
     console.log('    去Edge商店发布吧:https://partner.microsoft.com/zh-cn/dashboard/microsoftedge/overview');
     console.log('    去Edge商店发布吧:https://partner.microsoft.com/zh-cn/dashboard/microsoftedge/overview');
     console.log('================================================================================\n\n');
     console.log('================================================================================\n\n');
-});
-
+    
+    cb();
+}
 
 
 // 打包Firefox安装包
 // 打包Firefox安装包
-gulp.task('firefox', () => {
+function firefoxPackage(cb) {
     shell.exec('rm -rf output-firefox && cp -r output output-firefox && rm -rf output-firefox/fehelper.zip');
     shell.exec('rm -rf output-firefox && cp -r output output-firefox && rm -rf output-firefox/fehelper.zip');
 
 
     // 清理掉firefox里不支持的tools
     // 清理掉firefox里不支持的tools
@@ -181,13 +186,31 @@ gulp.task('firefox', () => {
     console.log('    当前版本:', manifest.version, '\t文件大小:', size);
     console.log('    当前版本:', manifest.version, '\t文件大小:', size);
     console.log('    去Chrome商店发布吧:https://addons.mozilla.org/zh-CN/developers/addon/web%E5%89%8D%E7%AB%AF%E5%8A%A9%E6%89%8B-fehelper/versions');
     console.log('    去Chrome商店发布吧:https://addons.mozilla.org/zh-CN/developers/addon/web%E5%89%8D%E7%AB%AF%E5%8A%A9%E6%89%8B-fehelper/versions');
     console.log('================================================================================\n\n');
     console.log('================================================================================\n\n');
-});
-
-// builder
-gulp.task('default', ['clean'], () => {
-    runSequence(['copy', 'css', 'js', 'html', 'json'], 'zip');
-});
-
-gulp.task('sync', () => {
-    gulp.src('apps/**/*').pipe(gulp.dest('output/apps'));
-});
+    
+    cb();
+}
+
+function syncFiles() {
+    return gulp.src('apps/**/*').pipe(gulp.dest('output/apps'));
+}
+
+// 注册任务
+gulp.task('clean', cleanOutput);
+gulp.task('copy', copyAssets);
+gulp.task('json', processJson);
+gulp.task('html', processHtml);
+gulp.task('js', processJs);
+gulp.task('css', processCss);
+gulp.task('zip', zipPackage);
+gulp.task('edge', edgePackage);
+gulp.task('firefox', firefoxPackage);
+gulp.task('sync', syncFiles);
+
+// 定义默认任务 - 在Gulp 4.x中,使用series和parallel代替runSequence
+gulp.task('default', 
+    gulp.series(
+        cleanOutput, 
+        gulp.parallel(copyAssets, processCss, processJs, processHtml, processJson), 
+        zipPackage
+    )
+);

BIN
output/fehelper.zip


+ 1 - 4
package.json

@@ -7,7 +7,7 @@
     "crypto": "^1.0.1"
     "crypto": "^1.0.1"
   },
   },
   "devDependencies": {
   "devDependencies": {
-    "gulp": "^3.9.1",
+    "gulp": "^4.0.2",
     "gulp-clean": "^0.4.0",
     "gulp-clean": "^0.4.0",
     "gulp-copy": "^1.1.0",
     "gulp-copy": "^1.1.0",
     "gulp-htmlmin": "^4.0.0",
     "gulp-htmlmin": "^4.0.0",
@@ -24,9 +24,6 @@
     "build": "gulp",
     "build": "gulp",
     "preinstall": "npx npm-force-resolutions"
     "preinstall": "npx npm-force-resolutions"
   },
   },
-  "resolutions": {
-    "graceful-fs": "^4.2.4"
-  },
   "repository": {
   "repository": {
     "type": "git",
     "type": "git",
     "url": "git+https://github.com/zxlie/FeOnline.git"
     "url": "git+https://github.com/zxlie/FeOnline.git"