Skip to content

手机局域网看漫画,当前功能有:夜间模式、自动下滑、筛选排序等

License

Notifications You must be signed in to change notification settings

jasoneri/comic_viewer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ComicViewer

tag tag

📑介绍

简单的 fastapi + vitejs 前后端分离项目, pc本地下漫画(或任意图片目录)后用手机浏览器进行局域网阅读

▼ 预览 ▼

内容目录树参考

配置:backend/conf.ymlpath的值(默认D:\Comic,切本就改成D:\Comic\本子,可在功能菜单 > 配置处更改

D:\Comic                              
   ├── web_handle                     # 程序创建的操作处理目录
        ├── save                      # 被保存的书
        ├── remove                    # 被移除的书
        └── record.txt                # 保存/移除/删除的记录,与`CGS.exe`的工具箱中的`已阅最新话数记录`关联
   └── web                            # 放内容(使用`CGS`的话目录结构就是已定的,使用自定义的话就需要创建这个`web`文件夹)
        └── GrandBlue碧蓝之海_第62话
             ├── 1.jpg
             ├── 2.jpg
             ......

打包好的开箱即用版 → 点击前往下载页面,包名 comic_viewer.7z
内含另外的 部署指南 ,替代下面的 准备/部署运行

使用可以参考 CGS的使用指南01:52 开始

📢更新

V1.1.1 | 2025-01-03 ~ 09

1. 手冷,新增自动下滑功能

看预览图右侧设置调速和按钮位置,按钮点击一次自动下滑,再点击就停止下滑

2. 存在多个Network时,优化局域网前端访问后端的取值以保证手机跨域访问(其跨域失败的表现为有ui但没书列表)

  • 只取192.x.x.x网段
  • x.x.x.1 的排除

规则也许还不完善,可提issue或者在代码里修改 位置在frontend/vite.config.js搜索alias.address.startsWith("192")
可自行调整if条件或在函数最后return needHost上面加一行代码needHost = 'x.x.x.x;'设成指定的ip值(这样的话还能跳出局域网访问公网)

3. 去除npm设源npm.taobao.org

感谢群友星空下的发现发现,后续控制台遇npm相关的可先看下方 QA的第一条

V1.1.0 | 2024-11-27

增加更改配置功能
目前的功能以及后续新增功能都将放在功能菜单

📚功能

仅针对部分功能做扩展说明

📚功能项 扩展说明
配置 打开显示的即为backend/conf.yml的内容,格式参照yaml
注:改配置会导致静态资源锚点更新,改后首次出不了图时按下下一排序之类的就行了
筛选 筛选状态下,按重新加载就能恢复未筛选状态
... -

⚡️准备/部署

版本

  • Python==3.12.3(实际3.8也行)
  • node // newest

backend

改配置:看上面的 内容目录树参考,把漫画放进该目录的web文件夹内

cd backend
python -m pip install -r requirements.txt

frontend

默认端口为8080,配置在frontend/vite.config.js

cd frontend
npm i

🚀运行

cd frontend
npm start

或在项目根目录运行脚本 comic_viewer.bat

✈️使用

启动后终端会显示局域网ip与端口 Network:行,手机进浏览器照样填地址即可,如预览所示

默认是删除功能没起效(防呆误删),熟悉后若需要删除功能,前往backend/api/routes/comic.py搜索book.handle == "del"
把下面两行解除注释 (# 去掉,注意去掉#后空格)

❓ Q & A 问答

1. npm i一直转圈无法启动等npm相关

frontend目录开终端,然后参照 此文章 里的代码指令进行换源,重启程序

🔰其他

kemono

配置中有个kemono_path,可观看从CGS脚本集下的kemono内容, 点击查看kemono内容目录树参考
观看链接为 你的局域网ip:端口/kemono

💬交流

此使用说明或其中QA也无法启动或功能报错等时,除了提issue以外也欢迎进群反馈

🔇开源许可

详见 MIT License


comic_viewer