An open API service indexing awesome lists of open source software.

https://github.com/maxiee/raybook

一个功能强大的跨平台电子书管理器和阅读器,支持多种格式,集成微信读书,基于 Electron 和 React 构建。
https://github.com/maxiee/raybook

ebook ebook-manager ebook-reader

Last synced: 8 months ago
JSON representation

一个功能强大的跨平台电子书管理器和阅读器,支持多种格式,集成微信读书,基于 Electron 和 React 构建。

Awesome Lists containing this project

README

          

# RayBook

RayBook 是一个基于 Electron 和 React 的开源电子书管理应用。它旨在为用户提供一个简洁、高效的电子书阅读和管理平台。

> **⚠️ 警告:早期开发阶段**
>
> RayBook 目前正处于早期开发阶段。许多功能尚未完成或可能存在问题。我们不建议在生产环境中使用,也不推荐用于管理重要的电子书收藏。如果您对参与开发感兴趣,我们非常欢迎您的贡献!

## 特性

- 📚 支持多种电子书格式 (EPUB, PDF, MOBI 等)
- 🔍 强大的元数据提取和管理
- 📖 内置电子书阅读器
- 🌐 集成微信读书网页版
- 🖼️ 自动提取和管理书籍封面
- 📁 批量导入和管理电子书
- 🔒 文件去重和 SHA256 校验
- 🔄 自动同步阅读进度
- ⚙️ 可自定义的存储和数据库设置

> **声明:关于微信读书功能**
>
> RayBook 通过浏览器网页提供微信读书网页版访问。我们尊重微信读书的版权和服务条款,不会存储或传播任何微信读书的内容,不侵犯版权和微信读书利益。
>
> 同时,RayBook 仅用于个人学习和研究,不得用于商业用途或侵犯他人权益。

## 更新记录

2024-08-05

- 架构重构:引入 Processor 图书类型处理器
- 优化:首页“添加图书”流程,使用 Processor 处理图书类型
- 初步支持 PDF 图书上传、解析元数据
- PDF 阅读器接入,能看 PDF 啦!还带有阅读进度保存!

2024-07-28

- 首页改版
- 新增:最近阅读的书籍功能

2024-07-27

- RayBook 打通微信书架
- 修复书籍信息更新失败的问题

2024-07-26

- 微信读书页工具栏展示书籍标题

2024-07-25

- 持久化记录微信登陆状态
- 微信读书网页版调试功能
- 优化窗口缩放通知逻辑,避免网页频繁刷新

## 技术栈

- Electron
- React
- TypeScript
- MongoDB
- MinIO (对象存储)
- Ant Design (UI 组件库)

## 安装

1. 克隆仓库:

```bash
git clone https://github.com/maxiee/RayBook.git
cd raybook
```

2. 安装依赖:

```bash
npm install
```

3. 运行应用:

```bash
npm start
```

## 使用方法

1. 启动应用后,首次运行需要在设置页面配置 MinIO 和 MongoDB 连接信息。
2. 在主页面,您可以通过点击 "添加图书" 或 "批量添加书籍" 来导入电子书。
3. 使用内置阅读器打开 EPUB 格式的电子书,或使用集成的微信读书功能。
4. 在设置页面,您可以管理存储路径、执行 SHA256 补齐等维护操作。

## 开发

要在开发模式下运行 RayBook:

```bash
npm run dev
```

## 构建

要构建生产版本的 RayBook:

```bash
npm run build
```

## 贡献

我们欢迎所有形式的贡献,包括但不限于:

- 提交 bug 报告
- 改进文档
- 提交功能请求
- 提交代码修复或新功能

请查看 [CONTRIBUTING.md](CONTRIBUTING.md) 了解更多详情。

## 许可证

RayBook 使用 [MIT 许可证](LICENSE)。

## 联系我们

如果您有任何问题或建议,请开启一个 issue 或通过以下方式联系我们:

- Weibo: [@Maeiee](https://weibo.com/u/1240212845)

---

感谢您对 RayBook 的关注!我们期待您的参与和反馈。