Koodo Reader : 一个开源免费的电子书阅读器

今天在浏览 GitHub 的时候,偶然发现了一个非常有趣的开源项目------Koodo Reader。这个项目是一款开源免费的电子书阅读器,支持多种格式。它具有一些非常独特的功能,深深地吸引了我的注意。在接下来的内容中,我将为大家详细介绍一下这个备受关注的阅读器项目。

koodoreader.jpg

Koodo Reader 介绍

Koodo Reader,一个跨平台的电子书阅读器,目前在github上已有14.1k star,是一个web项目。

_20240108225532.jpg

网页版地址: reader.960960.xyz/

github地址:github.com/koodo-reade...

文档地址:koodo.960960.xyz/zh/document

客户端下载地址:koodo.960960.xyz/zh

特色

  • 支持阅读格式:

    • EPUB (.epub)
    • 扫描文档 (.pdf, .djvu)
    • Kindle (.azw3, .mobi, .azw)
    • 纯文本 (.txt)
    • 漫画 (.cbr, .cbz, .cbt, .cb7)
    • 富文本 (.md, .docx)
    • FB2 (.fb2)
    • 超文本 (.html, .xml, .xhtml, .mhtml, .htm, .htm)
  • 支持 Windows,macOS,Linux 和 网页版

  • 备份数据到 OneDrive, Google Drive, Dropbox, FTP, SFTP, WebDAV, S3, S3 compatible

  • 自定义源文件夹,利用 OneDrive、百度网盘、iCloud、Dropbox 等进行多设备同步

  • 双页模式,单页模式,滚动模式

  • 听书功能,翻译功能,词典功能,触控屏支持,批量导入图书

  • 支持目录,书签,笔记,高亮,书架,标签

  • 自定义字体,字体大小,行间距,段落间距,阅读背景色,文字颜色,屏幕亮度,文字下划线、斜体、文字阴影、字体粗细

  • 黑夜模式和主题色设置

Koodo Reader 私有化部署

尽管作者已经为我们提供了Windows客户端和网页版,但作为热衷于Docker的爱好者,我们自然希望进行私有化部署。接下来,让我们详细介绍一下如何进行私有化部署的步骤。

有兴趣的家人们可以下载源码之后在项目的根路径运行 yarn 命令,接着运行 yarn build 的命令,之后根路径下会出现一个buid目录,我们将build目录下的文件复制到nginx的html目录下即可使用。不想下载项目的家人们也可以直接使用我打好的镜像registry.cn-hangzhou.aliyuncs.com/xj_lew/koodo-reader:1.0进行docker 部署,步揍如下:

创建docker-compose.yml文件:

yaml 复制代码
version: '3.3'
services:
  koodo:
    image: registry.cn-hangzhou.aliyuncs.com/xj_lew/koodo-reader:1.0
    container_name: koodo-ng
    restart: always
    logging:
      driver: 'json-file'
      options:
        max-size: '5g'
    environment:
      - NGINX_PORT=80
    ports:
      - 8099:80
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf

创建nginx的配置文件nginx.conf文件

ini 复制代码
user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;

    keepalive_timeout  65;

    client_max_body_size 500m;

    include /etc/nginx/conf.d/*.conf;



     server {
        listen       80;
#        外网访问的域名
        server_name  192.168.10.106;

      location / {
          root /usr/share/nginx/html;
          index index.html;
          try_files $uri $uri/ /index.html;
      }
     }
}

启动容器:

复制代码
docker-compose up -d 

如果不出意外的话我们的容器就启动成功了

Koodo Reader使用

在浏览器上输入访问地址

_20240108230641.jpg

  • 导入图书,可批量导入

_20240108231226.jpg

  • 添加读书笔记

我特别喜欢这个功能,特别是在处理大量阅读内容的文件时。我们可以轻松添加读书笔记,而且还能直接通过我的笔记-》显示笔记出处快速跳转到电子书或PDF对应的位置。

_20240108231700.jpg

_20240108232058.jpg

_20240108232532.jpg

_20240108232621.jpg

别的功能我们此处就不做演示了。

Koodo Reader 缺点

  • 本地存储\浏览器存储,多端不同步

Koodo Reader客户端版本是基于本地存储的,要多端同步的话需要借助网盘的同步空间功能,而网页版的数据作为缓存临时保存在了浏览器中,清理缓存会导致数据丢失。

  • 对于md、html的阅读体验感不好

虽然它支持阅读md和html等文件,但是页面查看的效果不是很好。

总结

Koodo Reader不仅仅是一款数字阅读应用,更是一场阅读的冒险。它为用户提供了丰富的功能,使阅读变得更加个性化、便捷和有趣。尽管目前仍存在一些不完善之处,但它正在持续不断地进行更新,我们期待未来它能够更加完善。不论您是文学、学术、漫画还是其他领域的热爱者,Koodo Reader都将成为您数字阅读之旅的得力助手。

相关推荐
z人间防沉迷k29 分钟前
后端开发概念
java·后端
caihuayuan530 分钟前
Vue3响应式数据: 深入分析Ref与Reactive
java·大数据·spring boot·后端·课程设计
ALex_zry3 小时前
Go核心特性与并发编程
开发语言·后端·golang
Kookoos4 小时前
ABP VNext + Orleans:Actor 模型下的分布式状态管理最佳实践
分布式·后端·c#·.net·.netcore·abp vnext
PWRJOY4 小时前
Flask 会话管理:从原理到实战,深度解析 session 机制
后端·python·flask
述雾学java5 小时前
Spring Boot是什么?MybatisPlus常用注解,LambdaQueryWrapper常用方法
java·spring boot·后端
程序员buddha7 小时前
SpringBoot多环境配置文件切换
java·spring boot·后端
twj_one8 小时前
SpringBoot+ELK 搭建日志监控平台
spring boot·后端·elk
咖啡啡不加糖8 小时前
Sentinel原理与SpringBoot整合实战
spring boot·后端·sentinel
悟能不能悟9 小时前
Spring Boot中如何对密码等敏感信息进行脱敏处理
spring boot·后端·python