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

[开源] NowenReader - Go 写的自托管漫画 & 小说管理平台,单二进制部署,支持 17+ AI 模型

  •  
  •   cropflre · 6 天前 · 663 次点击

    嗨,V 友们好!

    分享一个我开发的开源项目 —— NowenReader,一个自托管的漫画 & 小说管理阅读平台。

    GitHub: https://github.com/cropflre/nowen-reader

    做这个项目的原因

    家里 NAS 上堆了几千本漫画和小说,试了一圈 Komga 、Kavita 、Calibre-web ,要么不支持中文元数据抓取,要么部署依赖太重( Node/Java ),要么对小说支持太弱。干脆自己造了一个。

    核心亮点

    🚀 Go 单二进制,开箱即用

    • 无需 Node.js/Java/Python ,一个文件就是全部
    • 前端编译进二进制( go:embed ),真正的一键部署
    • SQLite 零配置数据库,纯 Go 实现无需 CGO

    📚 漫画 + 小说全覆盖

    • 漫画:ZIP/CBZ/CBR/RAR/7Z/PDF
    • 小说:TXT/EPUB/MOBI/AZW3
    • 内置翻页阅读器 + 小说智能分章

    🤖 AI 深度集成

    • 支持 17+ LLM 供应商( OpenAI/Claude/Gemini/DeepSeek/本地 Ollama 等)
    • AI 智能打标签、语义搜索、封面相似度检测
    • AI 对话式漫画/小说分析

    🌐 元数据抓取

    • AniList / Bangumi / MangaDex / MangaUpdates / Kitsu 五大源
    • ComicInfo.xml 自动提取
    • 中英文标签自动翻译

    📊 阅读统计

    • 阅读时长、每日趋势、年度报告
    • 阅读目标设定与追踪
    • JSON/CSV 数据导出

    🔗 生态兼容

    • OPDS 协议,支持 KOReader / Moon+ Reader
    • WebDAV 云同步,跨设备阅读进度同步
    • PWA 支持,手机上可安装为 App

    🛠 NAS 友好

    • Docker 多平台镜像( amd64/arm64 )
    • 专门的 NAS 部署配置(群晖/威联通/铁威马)
    • 内存限制 512MB 即可跑

    快速体验

    # Docker 一行启动
    docker run -d -p 6680:3000 -v ./comics:/app/comics -v ./data:/data cropflre/nowen-reader:latest
    

    打开 http://localhost:6680 即可使用。

    技术栈

    后端 Go + Gin + SQLite
    前端 Vite + React + TypeScript
    部署 Docker 多阶段构建 / 单二进制
    多语言 中文 / English / 日本語

    截图

    1 2


    项目还在积极开发中,最近刚加了重复检测( MD5 哈希比对)、书架系统、阅读目标等功能。

    欢迎 Star ⭐ 和提 Issue ,也欢迎 PR !有任何问题直接在帖子里问我。

    GitHub: https://github.com/cropflre/nowen-reader


    4 条回复    2026-03-23 11:30:26 +08:00
    Sunyin
        1
    Sunyin  
       6 天前
    有点意思,回头试一下,目前是 Komga+KMReader 使用的,先 Star 了
    cropflre
        2
    cropflre  
    OP
       6 天前
    @Sunyin 感谢支持,结合 AI 效果更佳~~
    Joeith
        3
    Joeith  
       3 天前
    既然楼主想做的漫画管理,那可以假设楼主深度用过 Komga 与 Kavita ,这两者在漫画管理都到了一定的高度。
    其他不用多说,基本很基础。

    那想想问问 仅在日漫的管理里,

    有两种核心的逻辑,一种是 kavita 的强依赖元数据与命名,差一点哪怕同文件夹也不会成 group ,当前好处也很明显。

    而 Komga 较粗犷的文件夹管理,只要是一层的文件夹均属于一个 series ,,在这个基础上来搭建漫画管理逻辑,好处自然入门容易( Komga 普及度也是最高),而进一步去完善漫画管理,进阶的成套管理,挺难达到 kavita 的管理颗粒度。

    那楼主的在这方面的思考是啥样,如何平衡两者的来做进阶漫画管理?

    另外同人志,商业志,画册等等又与正常漫画的管理逻辑不一样,楼主会进一步考虑如何区分里面的逻辑
    cropflre
        4
    cropflre  
    OP
       1 天前
    @Joeith Komga vs Kavita ?我全都要
    说实话,我觉得这俩都"偏科"了:

    Komga 像个随和的室友——你随便丢文件夹里就行,它不挑。但你想精细管理?它就摆烂了。

    Kavita 像个强迫症管家——命名差一个字都不认,但认了之后管得确实细。

    NowenReader 想做的是一个渐进式的方案:

    入门时像 Komga:丢文件夹里就自动成组,零门槛

    进阶时靠智能匹配:散落的文件通过标题解析(繁简归一化、去卷号、去扫图组标记等)自动归系列

    终极靠 AI 兜底:跨语言的、格式乱七八糟的,交给 AI 做语义分析来归组

    而且——所有分组都是虚拟的,不动你的文件系统。你觉得分错了,拖一下就改了。不像 Komga/Kavita 你得真的去改文件夹或文件名。

    同人志、商业志、画册的区分
    坦白讲,目前还没有在产品层面把这块系统化。当前可以通过标签系统手动区分(比如打上"同人志""画册"标签),但确实没做到自动识别和差异化管理。

    这块我确实在思考,理想状态是:

    商业志:按卷号管理,关注连载进度

    同人志:按社团/展会( C99 之类)维度组织,弱化卷号概念

    画册/设定集:弱化阅读进度,偏浏览模式

    文件名解析里其实已经能识别 (C99) [社团名] 这些标记了,后续可以用这些信息自动归类。但要做好还需要时间打磨,先把核心的系列分组做扎实再说。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   944 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 20:46 · PVG 04:46 · LAX 13:46 · JFK 16:46
    ♥ Do have faith in what you're doing.