【重构计划】积极采纳建议!
整理了一份思维导图,暂时先想到这么多,如果您有合适的建议,欢迎提出。
希望修改一下查看详细照片时的UI样式,比如图片边缘的模糊,exif信息显示等。类似https://photo.axis-studio.org/
架构采用 Next.js + Hono.js,后续开发计划逐步重构功能。 得益于 Hono.js 更快的速度、多运行时兼容以及好用的中间件,未来还能更方便的扩展开发。最重要的是依旧可以部署在 Vercel 之类的平台,使用门槛低。
- 依旧保持 Vercel 之类的平台能够部署,但可能后续少部分新增的功能,只能 Docker 之类的部署才能使用,如本地存储。
- 依旧只支持 Node.js 环境,不支持 Edge 环境,原因详见:https://nextjs.org/docs/app/api-reference/edge#unsupported-apis
- 存储需要尝试新增 OneDrive 支持。
- 增加初始化的流程,尽量提升用户体验。
如下需求和问题,在重构过程中,可能需要解决:
- https://github.com/besscroft/PicImpact/issues/124
- https://github.com/besscroft/PicImpact/issues/122
- https://github.com/besscroft/PicImpact/issues/120
- https://github.com/besscroft/PicImpact/issues/117
- https://github.com/besscroft/PicImpact/issues/111
- https://github.com/besscroft/PicImpact/issues/72
- https://github.com/besscroft/PicImpact/issues/53
「建议」优化图片显示效果
- https://github.com/besscroft/PicImpact/issues/120
- https://github.com/besscroft/PicImpact/issues/131
- https://github.com/besscroft/PicImpact/issues/115
综合 #131 和 #115 ,我在想存储原图必要性
首先目前的图片的展示方案存在高压缩率下的色块、涂抹问题,这一点在您的图片站中很明显,作为图片展示站点,好的图片效果还是很重要的,自己刀锐奶化的照片变的模糊还是体验不爽的
我的想法是上传图片的时候,不保留原图,提供一个 quality 90/100的(webp/jpg)供画面展示和用户下载即可,然后一张略缩图作为图库展示。这样子能够很好的的权衡图片展示质量和网络媒体优化。
@hexgu 存储原图这个还是得保留,因为也确实有用户需要,项目一开始全都是原图来着,只不过后来是考虑到图片太大加载半天才进行压缩的......存储部分打算放到 v2 分支去做了,由于精力不太够分配不过来,v1 分支目前只进行 bug 修复。
在 v2 版本,我会将数据库部分重新进行更合理的设计,主要是迭代这么久了,技术债(踩过的坑)和新需求的产生,需要好好考虑下设计,以及项目的一个定位的取舍。
@hexgu 存储原图这个还是得保留,因为也确实有用户需要,项目一开始全都是原图来着,只不过后来是考虑到图片太大加载半天才进行压缩的......存储部分打算放到 v2 分支去做了,由于精力不太够分配不过来,v1 分支目前只进行 bug 修复。
在 v2 版本,我会将数据库部分重新进行更合理的设计,主要是迭代这么久了,技术债(踩过的坑)和新需求的产生,需要好好考虑下设计,以及项目的一个定位的取舍。
了解,其实存不存原图我到还好,就是看大伙的存储桶空间多不多。重点是现在压缩的太狠了!
关于 v2 的话您要是方便的话在开发前同步一下想法。我也有一些不太成熟的方法和观点想提,但不太想影响您对项目的定位选择。
@hexgu v2 版本的话,上面已经说过一些了。 UI 部分要尽量保持风格统一(主要还是菜了,有些东西只能糊组件),尽管前后台可以2套风格。 数据库部分,会进行新的设计,会跟 v1 版本冲突。 主要的大更新我觉得还是后端部分,打算讲文件存储部分和相册部分分开。文件存储直接对接存储平台/本地存储,在业务看来,只需要相册/图片数据,“映射”到文件存储就行了,俩边功能拆开更好处理。其他的功能,我觉得在引入 hono.js 后,会比直接用 next.js 做后端,要好实现一些。
https://github.com/besscroft/PicImpact/pull/141
有没有计划加个地图,做类似这样的功能呢?
https://demo-zh.photoprism.app/library/places
https://demo.immich.app/map
https://demo.immich.app/photos/66cba6ae-597f-4721-a710-ef264cfca93e
另外还有一点想法,就是目前的首页感觉和相册是不是没什么区别?一张相片只能归属于一个相册,我想让一张精选照片既展示在自己的相册中,又能展示于首页。
@monsterxcn 这个是有打算做的,毕竟目前确实也是预留了经纬度字段的。我会抽空做这个功能,不过我得先研究下,毕竟是第一次做地图,尤其是要考虑地图 api 好用且免费。(当然也欢迎 pr
目前的首页感觉和相册是不是没什么区别
这个就是没有区别的,但是您懂的,网站必须得有个路由是 / 吧,不然会显得很奇怪。
希望增加图片上传进度的功能,目前alist上传只能转圈圈,不知道技术上是否支持。
希望增加图片上传进度的功能,目前alist上传只能转圈圈,不知道技术上是否支持。
上传请求是基于 fetch 实现的,fetch 方法允许去跟踪 下载 进度,但是无法跟踪 上传 进度,需要用 XMLHttpRequest 来实现,我是懒得写这个东西的......
https://camarts.app
这个网站的 UI设计, 真的做的很棒
https://github.com/besscroft/PicImpact/issues/187 https://github.com/besscroft/PicImpact/issues/186 https://github.com/besscroft/PicImpact/issues/185
https://camarts.app
这个网站的 UI设计, 真的做的很棒
https://github.com/sun0225SUN/camlife 确实好看 还刷到一位大佬参考他写的
也许不需要管理后台,直接通过 commit 提交图片的 URL 以及备注之类的,然后 Vercel 自动部署不是更优雅吗?
考虑添加多用户吗?还有希望前台样式可以有更多样式选择 或者直接后台可以修改全局css,这应该很棒
@iguri 多用户功能暂时不会有,因为哪些用户角色可以干什么事设计起来麻烦(虽然代码实现并不复杂),需要考虑清楚才行。前台样式的话,我会抽空加上新的样式选择的(会做的会做的),全局 css 是个不错的建议,我研究下咋弄。
@iguri 多用户功能暂时不会有,因为哪些用户角色可以干什么事设计起来麻烦(虽然代码实现并不复杂),需要考虑清楚才行。前台样式的话,我会抽空加上新的样式选择的(会做的会做的),全局 css 是个不错的建议,我研究下咋弄。
多用户确实没必要,多人公用一个账户也不是不行,毕竟版权信息那里可以添加多个。 关于样式,其实已经接近完美了,只是一万人有一万个哈姆雷特,我主观想法是去掉所有的按钮布局,进后台直接加admin或自定义路由,而那些白夜模式默认自动后也可以在后台手动设置(大部分人应该不常用),把相册路由同步pc样式... 还有一个是图片加载出来默认好像不是从上至下,而是第一页的从左到右,可以的话让图片加载出来前添加个蒙版遮罩,不至于加载过程那么空洞。 以上只是个人使用习惯上的想法Õ
把设置图片是否出现在首页的选项也做成图标显示在图片底部,现在这样操作太麻烦了。 图片只有批量删除,却没有批量显示/不显示。
alist api支持openlist吗