V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
tukon479
V2EX  ›  分享创造

开源了一个现代化照片画廊网站 - Afilmory

  •  1
     
  •   tukon479 ·
    innei · 18 天前 · 4998 次点击

    起因很简单:市面上的相册方案 UI 都不太喜欢,所以自己写了一个。

    最开始就是拿 Cursor 的 vibe 功能出来玩玩,没想到后来有了一些用户。现在代码已经和几个小伙伴一起接管了,重构了挺多东西,代码质量比最初好了不少。

    技术栈比较现代:

    • React 19 + TypeScript + Vite
    • 自研 WebGL 图片渲染引擎,缩放平移体验不错
    • 支持 HEIC/TIFF 自动转换
    • 多进程并发处理,性能还可以
    • 增量同步,避免重复处理

    存储方案灵活:

    • 支持各种 S3 兼容存储
    • 支持 GitHub 作为存储(白嫖党专用)
    • 后续可以轻松扩展其他存储

    一些实用功能:

    • Live Photo 支持
    • 完整 EXIF 信息展示
    • 富士胶片模拟参数识别
    • 响应式瀑布流布局
    • Docker 一键部署

    目前线上跑了几个实例,稳定性还行。如果你也对现有相册方案的 UI 不满意,可以试试这个。

    GitHub: https://github.com/Afilmory/Afilmory Demo: https://afilmory.innei.in

    欢迎围观和贡献代码 🎉

    59 条回复    2025-07-08 12:01:13 +08:00
    sickoo
        1
    sickoo  
       18 天前
    赞,一眼就喜欢了
    Wxh16144
        2
    Wxh16144  
       18 天前
    真不错,已 star
    Maxtune
        3
    Maxtune  
       18 天前
    真棒,已经用上了,太库拉,https://gallery.mxte.cc
    codingBug
        4
    codingBug  
       17 天前
    看起来不错啊!请问数据量很大的情况会卡顿吗?比如几十万张图片?能搜索吗?
    xinyu391
        5
    xinyu391  
       17 天前
    简洁!
    qinfengge
        6
    qinfengge  
       17 天前
    安卓的实况也支持吗
    CSGO
        7
    CSGO  
       17 天前
    非 coder 问下,如果放 github 上,github 空间无限?有无滥用风险?我照片如果有几十万张的话,现在放 google photo 上,压力大。
    DIYgods
        8
    DIYgods  
       17 天前
    好好好,star 了
    Desdemor
        9
    Desdemor  
       17 天前
    可以啊 已 star
    nandie
        10
    nandie  
       17 天前
    已 star
    yikuxia
        11
    yikuxia  
       17 天前
    good 已 star
    wwyf
        12
    wwyf  
       17 天前
    看起来非常不错
    tukon479
        13
    tukon479  
    OP
       17 天前
    @CSGO 建议还是放 S3 上
    tukon479
        14
    tukon479  
    OP
       17 天前
    @qinfengge 同名文件上传 +.mov 就行
    tukon479
        15
    tukon479  
    OP
       17 天前
    @codingBug 后面计划会做大数据的优化
    charexcalibur
        16
    charexcalibur  
       17 天前
    手动点赞👍
    littlejackyxu
        17
    littlejackyxu  
       17 天前
    好漂亮啊 必须 star!
    yiroonli
        18
    yiroonli  
       17 天前
    很好,已 star
    waterhydroxyl
        19
    waterhydroxyl  
       17 天前
    能否和 Google photo 关联起来,展示谷歌相册备份好的影集
    johnnyyeen
        20
    johnnyyeen  
       17 天前
    大图阅览模式下切换相片的动画有点卡
    Psily1017
        21
    Psily1017  
       17 天前
    已 star ,这个是真喜欢。
    tukon479
        22
    tukon479  
    OP
       17 天前
    @johnnyyeen 这是 swiper 控制的,感觉得用 webgl 实现?
    chengxy
        23
    chengxy  
       17 天前
    好好好
    johnnyyeen
        24
    johnnyyeen  
       17 天前
    @tukon479 感觉是加载图像卡 UI 线程了。
    zhw2590582
        25
    zhw2590582  
       17 天前
    太酷啦
    superchijinpeng
        26
    superchijinpeng  
       17 天前
    真不错
    ssshooter
        27
    ssshooter  
       17 天前
    咦,点进去发现居然已经 star 过了 🤔
    jacketma
        28
    jacketma  
       17 天前
    要是没有免费 CDN 加持,流量跑起来费用不低的
    DrLty
        29
    DrLty  
       16 天前
    好康,喜欢,star 了,希望能越做越好
    Panameragt
        30
    Panameragt  
       16 天前
    tukon479
        31
    tukon479  
    OP
       16 天前
    @Panameragt 参考了一下 vercel 的 hh
    Quaan
        32
    Quaan  
       16 天前
    好惨,我不会 build ,哭惹
    tukon479
        33
    tukon479  
    OP
       16 天前
    @Quaan 啊? 可以发 issue
    ChrisV5
        34
    ChrisV5  
       15 天前
    支持 nas 吗
    xmsumi
        35
    xmsumi  
       15 天前
    手动发文支持一个
    xmsumi
        36
    xmsumi  
       15 天前
    tukon479
        37
    tukon479  
    OP
       15 天前
    @ChrisV5 支持 S3 协议
    tukon479
        38
    tukon479  
    OP
       15 天前
    @johnnyyeen image decode 放到 worker 里面 试过了不卡了
    vyron
        39
    vyron  
       14 天前
    很漂亮,建议支持输入密码后访问,作为个人或家庭私密相册
    dabingbing
        40
    dabingbing  
       13 天前
    请问瀑布流用的哪个组件呀
    shmilypeter
        41
    shmilypeter  
       13 天前
    已 star ,居然在 demo 里看到南邮的图书馆了
    coolfan
        42
    coolfan  
       13 天前
    小而美!原图比例的照片墙一眼惊艳
    Philippa
        43
    Philippa  
       12 天前
    starred ,2 个点:

    1. 图片预览后关闭回到照片墙会卡在灰背景 0.4s 左右
    2. 支持本地网络和磁盘照片加载
    WhatWhatWhat
        44
    WhatWhatWhat  
       12 天前
    太棒了,一眼喜欢
    wuyadaxian
        45
    wuyadaxian  
       12 天前
    太棒了喜欢
    cue
        46
    cue  
       11 天前 via iPhone
    挺棒的,比国外那些酷多了
    RoccoShi
        47
    RoccoShi  
       11 天前 via iPhone
    不错哦
    stigo
        48
    stigo  
       11 天前
    漂亮,已 star
    cjh1095358798
        49
    cjh1095358798  
       11 天前
    厉害佬
    Qiane
        50
    Qiane  
       11 天前
    考虑加入端到端加密吗?
    Xc1Ym
        51
    Xc1Ym  
       11 天前
    好看,马上就用
    awendujitang
        52
    awendujitang  
       11 天前 via Android
    漂亮😍
    wali77
        53
    wali77  
       11 天前
    很酷,我也准备试试
    civetcat
        54
    civetcat  
       11 天前
    (✧∀✧)好看
    qujiqujl
        55
    qujiqujl  
       11 天前 via iPhone
    这个确实不错,能不能拉个群?社群搞起来
    himself65
        56
    himself65  
       10 天前
    既然题主提到了 react 19 (带版本号),想请问用到了 19 哪些功能
    HarperLucky
        57
    HarperLucky  
       10 天前
    很流畅啊,很好用,已 Star 。
    fengyunkkx
        58
    fengyunkkx  
       10 天前
    很好看!已 star
    tukon479
        59
    tukon479  
    OP
       9 天前   ❤️ 1
    @Philippa 1 已经修了 2. 有社区 pr 了
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1147 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 18:07 · PVG 02:07 · LAX 11:07 · JFK 14:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.