纯本地压缩,不上传文件,隐私友好
image compressor — TypeScript 工具站模板
作者 abue-ammar
本地压缩图片的 React+TypeScript 工具站,支持批量处理与 Tauri 桌面打包。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 2
截图用于了解视觉与布局,交互效果请以实际项目为准。 本截图因高度限制未包含整页。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
React 18 + TypeScript + Vite,shadcn/ui 界面
拖拽上传、质量调节、批量压缩、ZIP 下载
模块化架构,组件与 Hook 职责单一
Tauri 桌面端配置,可尝试打包原生应用
提供在线演示,可快速体验完整流程
模板详细介绍
image compressor 是一个开源的在线图片压缩工具,所有处理都在浏览器本地完成,不向服务器上传任何文件。项目采用 React 18、TypeScript 和 Vite 构建,界面使用 shadcn/ui 组件,支持拖拽上传、质量滑块调节、批量压缩以及单张或 ZIP 打包下载。代码结构清晰,按组件、自定义 Hook 和工具函数拆分,核心压缩逻辑封装在 useImageCompression 中,不依赖外部图像处理库。
项目同时包含 Tauri 桌面端配置(src-tauri 目录),理论上可以打包为 Windows、macOS 或 Linux 应用,但 README 没有提供打包后的安装说明或验证结果,桌面端能力需要自行测试。Web 端有真实在线演示,可以直接体验压缩效果和交互流程。适合作为图像处理工具站的界面与交互参考,或作为学习 React 组件拆分、Hook 封装和文件处理的项目。
需要注意的是,README 声称支持 JPEG、PNG、WebP 等多种格式,但实际支持范围需查看 file-validation.ts 中的 ALLOWED_FORMATS 常量。压缩算法为自定义实现,未说明具体压缩率或性能指标,生产环境使用前建议用真实图片测试输出质量。项目没有测试脚本,也没有 CI 配置,上线前需要自行补充。
适合你的项目吗?
适用场景
- 搭建一个隐私优先的在线图片压缩工具
- 学习 React 组件拆分与自定义 Hook 设计
- 作为 Tauri + React 桌面应用的起点
- 参考其文件上传、预览和下载交互模式
适合人群
- 前端开发者,想研究工具站项目结构
- 需要本地图片压缩功能的个人或团队
- 对 Tauri 桌面打包感兴趣的开发者
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
需要 Node.js 20+ 和 npm。
- 2
克隆后执行 npm install && npm start 即可启动 Web 开发服务器。
- 3
Tauri 开发需额外安装 Rust 工具链,运行 npm run tauri dev。
- 4
压缩格式支持范围需查看 src/utils/file-validation.ts 中的 ALLOWED_FORMATS。
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明MIT许可证允许免费使用、修改、发布、分发、再许可和销售,仅需保留版权与许可声明。
使用时需要遵守
- 保留原作者版权声明和 MIT 许可证声明。
- 在所有副本或实质部分中包含上述版权声明和许可声明
额外费用与待核对事项
- README未单独说明logo、字体等素材的授权范围
查看原文依据
Permission is hereby granted, free of charge, to any person obtaining a copy
许可证原文
The above copyright notice and this permission notice shall be included in all
许可证原文
https://github.com/abue-ammar/image-compressor/blob/master/LICENSEhttps://github.com/abue-ammar/image-compressor/blob/HEAD/README.mdPermission is hereby granted, free of char
许可证原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-09-24。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 77 / 100
- 技术栈
- TypeScript
- 网站类型
- 工具站
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-04-08
- 截图检查日期
- 2026-09-05
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 TypeScript。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
当前版本没有可核对的编辑审核记录;旧的应用时间不代表已完成事实审核。
这条历史介绍未保存固定版本的来源快照。请对照当前仓库,发现不一致可反馈。
反馈内容错误看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

dillinger
Dillinger 是一个基于 Next.js 14 构建的 Markdown 编辑器,核心编辑能力由 Monaco Editor 提供,因此拥有接近 VS Code 的编辑体验。
TypeScript · 工具站

placemark
Placemark 是一个开源的地图数据创建、查看、编辑与分析工具,主站托管在 Placemark.io,本仓库面向想自行部署或二次开发的开发者。
TypeScript · 工具站

copilot metrics viewer
copilot metrics viewer 是一个面向 GitHub Copilot 的指标可视化工具,帮助组织或企业账户直观了解 Copilot 的使用情况与采纳趋势。
TypeScript · 工具站

cartcut
CartCut 是一个定位为“AI 视频编辑器”的开源项目,核心卖点是基于图层的编辑方式,与常见的轨道式剪辑不同,它允许用户对单个素材叠加多种效果,操作上更接近 After Effects 的思路,但目标是让动态图形创作…
TypeScript · 工具站

resume builder
resume builder 是一个开源的在线简历生成器,项目代号 WTF Resume。 它主打“实时设计”体验:用户无需注册即可通过拖拽方式调整简历版式,所见即所得。
TypeScript · 工具站

color picker
color picker 是一个开源的颜色选择器工具站,由 imathis 开发,提供了实时在线的演示环境。
TypeScript · 工具站
