唉,一年了无人问津,开源算了

173 天前
 joye

最近重构了我的个人项目图小小( Pic Smaller ),无论是技术上还是 UI 上都进行了重构,改动巨大,这次我决定完全开源它( Github 地址在文末)。因为之前跑了一年几乎无人问津,它一直是一个完全免费项目,没有广告,没有打赏,甚至联系方式都没有,做成这个样子属实让人很不甘,所以干脆完全开源算了,希望能吸引一些关注,先看看新版本预览效果:

图小小是一个图片压缩工具,基于 Vite+React 技术栈开发,它可以完全取代类似 TinyPNG 之类的在线图片压缩工具,且压缩之后视觉表现效果往往更好。但图小小有个更大的优势:通过图小小进行图片压缩完全是基于浏览器本地的,没有任何服务端交互,图片不会上传到远程服务器,所以非常安全,不用担心隐私图片被泄露。

目前图小小支持 JPEG/PNG/WebP/Gif 四种格式的图片压缩,基本上能满足绝大部分日常使用需求,本项目为个人业务时间开发,为了节约时间,采用了大量的第三方开源项目,所以图小小本身是没什么技术含量的,我个人认为图小小优秀在于提供了良好的 UI 和使用体验,虽然是缝合怪,但鲜有人做出类似的产品

技术实现

简单说一下技术实现,感兴趣的自行研究,不得不感谢 Webassembly 技术的加持,让 PNG/Gif 编解码这类 CPU 密集计算型需求在纯网页端实现成为了现实,并且还有不错的性能表现

为了防止 UI 阻塞,运用了 Web Worker 技术进行编解码和压缩,同时为了防止同一时刻浏览器的内存占用过大(内存占用过大也会导致卡顿),用了一点小技巧在 Worker 端实现了一个简单的队列 Queue,这里不展开,有兴趣的自行研究源码

部署实现

网站部署在 vercel 上,主要原因是穷,所以初次访问速度会有一定的影响,国内其实大部分地区已经屏蔽了 vercel ,为了让国内用户也能访问,不得已通过 Cloudflare 做别名解析了 txx.cssrefs.com 这个域名。这里要强烈推荐个人开发者采用国外的解决方案,这个网站除了域名(域名是以前在腾讯云买的),其他证书服务器等都是免费的,感谢万恶的资本主义

不足之处

由于图小小是纯本地执行,因而不同的电脑配置会有不同的压缩表现,实测批量压缩成百上千张图片会有明显的卡顿甚至浏览器崩溃现象。这是正常的,由于没有任何限制,使用本工具可能会导致浏览器耗尽 CPU 和内存资源,所以使用时请自行评估


项目地址:https://github.com/joye61/pic-smaller


18744 次点击
所在节点    程序员
122 条回复
EmbraceQWQ
173 天前
https://www.toolcat.cloud/ 收录你的,感谢你的付出
sfqtsh
173 天前
我的主手机 iPhone 刚好前几天在 app store 里买了个图片压缩的应用,一些拍的好多 M 的图片压缩后小了很多,质量看起来差不多。我觉得这类放在手机上需求更大点更能赚 money 吧
Admstor
173 天前
1 使用 web 工具的用户往往不是隐私敏感型,你的纯浏览器处理模式与同类产品并无明显优势

2 界面复杂明显并没有做到简单易用。从用户角度看,当我需要用压缩的时候,往往是要么体积或者分辨率的限制,所以其实对这些用户,他们需要的是,我上传一个照片,你返回一个符合我要求的压缩后照片,而不是让我选所谓的压缩率等等参数

3 批量处理用户会选择更专业的软件,而不是选择 web 工具

4 你这个东西更适合作为某个比较大型的 web 项目,其中一个组件,指望赚钱或者广告流量,你除非做个站点,全都是类似的 web 工具库,才有可能。但是说实在的,竞争压力依然巨大,同样市场极小。
lizhenda
173 天前
确实很难商业化
joye
173 天前
@Admstor 感谢建议,说的很对。我会抽时间优化功能,采纳你的建议,我今年 37 岁了,公司面临倒闭,马上要离开职场了,只想让自己以后能留下一点技术的回忆,这个工具太小,永远不为赚钱,只为有人使用,有人记得就足够
angrylid
173 天前
如果流量达标了,光贴广告应该是能赚到钱的,进阶一点的话还可以搞社区和云存储等增值服务。

不过第三方库为什么是以二进制加入到版本控制里的方式来管理?
joye
173 天前
@angrylid Webassembly 技术
osilinka
173 天前
推广不好吧, 记得一个人在 reddit 的 sideproject 推广类似的,一个月有几百美元的收入
MaizerShuahu
173 天前
我经常有需求需要使用网站压缩图片,目前你做的网站对我来讲有一些体验上的问题
1.一打开就要上传图片,不能进行我想要的质量设置
2.一般我找网站压缩,都是求保质的,也就是说我期望压缩的更小,而质量可以接近原图,否则我用 ps 也可以搞定,而我使用了之后发现质量变化太大,无法达到预期
syozzz
173 天前
感觉很像这个 https://squoosh.app/
xhawk
173 天前
我最近有个跟这个相关的需求场景跟你分享,电商里头的图片管理,要解决 2 个问题,图片的存储管理,图片的打标签分类,你这属于高级功能,需要能对图片做基础编辑,因为亚马逊会对图片严格审核,需要能对图片的信息重新组织。
TuTouPower
172 天前
@xhawk 可以联系,RmVpS2FpNjgyMw==
wlf92
172 天前
有个产品叫 PP 鸭,我愿意付费,因为只要把文件夹拖进去就会遍历所有图片进行压缩了。
题主可以借鉴一下他的设计和商业模式。
BeijingBaby
172 天前
挺好的,可自定义压缩率
MillaMaxwell
172 天前
试用一下,感觉如果我想处理大量图片还是不够方便
jisuowei
172 天前
这就不得不提到以前公司做的 https://tuya.xinxiao.tech/
InsideSeed
172 天前
已 star 支持
sundev
172 天前
star 支持
abccccabc
172 天前
兄弟,能不能 build 一个,我是做后端的,对压缩也挺感兴趣的。

再去学一遍前端,可能性不大。
zhuang0718
172 天前
为开源点个赞~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1041478

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX