Skip to content

轻量级微信读书客户端,体积小,页面宽,自动翻页,体验增强 A Weixin Reader Desktop with Auto-turning and Wide-pager

License

Notifications You must be signed in to change notification settings

dengcb/weixin-reader-desktop

Repository files navigation

🚀 基于 Tauri v2 + Rust 的高性能微信读书桌面客户端

Release License Downloads Tauri Platform

选择理由核心特性快速开始开发指南技术架构


💡 选择理由

通过脚本注入方式增强官方 Web 端体验,完全兼容官方功能的同时提供更好的桌面体验

📦 极致轻量

安装包仅 ~5MB
内存占用低至 100MB
相比 Electron 降低 80%

⚡ 原生性能

基于 Rust + Tauri v2 构建
启动速度快
CPU 占用低

🔒 安全可靠

完全开源
无广告/无跟踪
数据直连官方


✨ 核心特性

🖥️ 桌面体验

✓ macOS 原生菜单栏            ✓ 窗口位置/大小记忆
✓ 完整键盘快捷键               ✓ 恢复最后阅读页面
✓ 多显示器支持                 ✓ 一键移动窗口

📖 阅读增强

🎨 界面优化

  • 🌓 深色模式 - 护眼舒适
  • 📺 宽屏模式 - 沉浸阅读
  • 🧹 隐藏边栏 - 纯净界面
  • 🔍 缩放控制 - 自由调节

⌨️ 翻页控制

  • 🖱️ 触摸板双指滑动
  • ⚡ 自动翻页(可调速)
  • 👻 鼠标自动隐藏
  • 🎯 精准进度显示

🔌 插件化架构 v0.8.0 历史性更新

全新可插拔式插件系统,支持第三方适配器与自定义脚本

✓ 支持 .atrd 插件包安装/卸载     ✓ 微信读书作为内置默认插件
✓ 标准化插件开发接口             ✓ 预留本地阅读(EPUB/TXT)能力
✓ 插件级命名空间隔离             ✓ 独立配置与存储系统

🛠️ 可视化插件编辑器 v0.9.0 新增

内置插件开发工具,无需外部 IDE 即可创建和编辑插件

📝 表单式配置

  • 基本信息(ID、名称、版本、描述)
  • 站点配置(域名、URL 模式)
  • 功能能力(宽屏、深色、翻页等)

💻 代码编辑

  • TypeScript 语法高亮
  • 多文件标签页切换
  • 实时预览插件信息
路径: 设置 → 插件管理 → 新建插件

🔄 智能更新

  • ✅ 启动后自动检测更新
  • 📥 一键下载安装
  • 🔔 新版本通知

🚀 快速开始

📥 下载安装

前往 Releases 页面 下载最新版本:

芯片类型 下载文件
🍎 Apple Silicon (M1/M2/M3/M4) weixin-reader_x.x.x_aarch64.dmg
💻 Intel weixin-reader_x.x.x_x64.dmg

🔨 从源码构建

# 1. 克隆仓库
git clone https://github.com/dengcb/weixin-reader-desktop.git
cd weixin-reader-desktop

# 2. 安装依赖
bun install

# 3. 构建发布版本
bun release:arm    # Apple Silicon
bun release:intel  # Intel

🪟 Windows 构建(在 macOS 上交叉编译)

# 1. 首次安装(仅需一次)
brew install llvm
cargo install cargo-xwin
rustup target add x86_64-pc-windows-msvc

# 2. 构建
export PATH="/opt/homebrew/opt/llvm/bin:$PATH"
bun run build
cargo xwin build --release --target x86_64-pc-windows-msvc --manifest-path src-tauri/Cargo.toml

# 产物: src-tauri/target/x86_64-pc-windows-msvc/release/weixin-reader.exe (~7MB)

🛠️ 开发指南

📋 环境准备

安装 Rust

curl --proto '=https' --tlsv1.2 -sSf \
  https://sh.rustup.rs | sh

安装 Bun

curl -fsSL https://bun.sh/install | bash

⚡ 开发命令

# 安装依赖
bun install

# 🚀 启动开发模式(热重载 + 自动同步版本)
bun start

# 🔨 构建注入脚本
bun run build:inject

# 📦 完整构建
bun run build

🐛 调试构建

bun run debug        # 快速调试(ARM)
bun run debug:arm    # Apple Silicon
bun run debug:intel  # Intel

📤 发布打包

bun release:all    # 构建所有架构
bun release:arm    # Apple Silicon
bun release:intel  # Intel
bun release:clear  # 清理发布文件

✅ 测试

Rust 后端测试

cd src-tauri && cargo test

TypeScript 前端测试

bun test

🏗️ 技术架构

📚 技术栈

层级 技术 说明
前端 TypeScript + Vite 注入脚本开发与构建
后端 Rust + Tauri v2 原生桌面能力与系统集成
构建 Bun 极速包管理与脚本执行
测试 Cargo + Bun Test 双层测试覆盖(332+ 测试用例)

🎯 核心架构:脚本注入模式

┌──────────────────────────────────────────────────────────┐
│                      Tauri 应用                           │
├──────────────────────────────────────────────────────────┤
│                                                          │
│  ┌─────────────┐        IPC         ┌─────────────────┐  │
│  │             │◄──────────────────►│                 │  │
│  │  Rust 后端   │                    │  WebView 前端   │  │
│  │             │                    │                 │  │
│  │  • 原生菜单  │                    │  • inject.js    │  │
│  │  • 设置持久  │                    │  • 六大管理器     │  │
│  │  • 多显示器  │                    │  • 状态同步      │  │
│  │  • 自动更新  │                    │                 │  │
│  │             │                    │                 │ │
│  └─────────────┘                    └────────┬────────┘ │
│                                              │          │
└──────────────────────────────────────────────│──────────┘
                                               │
                              ┌────────────────▼──────────────┐
                              │   weread.qq.com (官方网站)     │
                              └───────────────────────────────┘

🔧 前端模块(六大管理器)

位于 src/scripts/managers/ 目录:

管理器 核心职责
IPCManager 🎯 中央事件总线,路由/标题监控
AppManager 🚀 应用初始化,恢复阅读进度
MenuManager 📋 菜单状态同步,处理菜单动作
StyleManager 🎨 宽屏模式,隐藏工具栏,样式注入
ThemeManager 🌓 深色模式,链接处理,缩放控制
TurnerManager 📖 翻页控制器(含子模块:自动翻页、滑动翻页、鼠标隐藏)

🦀 Rust 后端

位于 src-tauri/src/ 目录:

模块 核心职责
lib.rs 🎯 应用入口,插件初始化,脚本注入
commands.rs 🔌 IPC 命令定义(前后端通信接口)
menu.rs 📋 原生菜单构建,事件处理
monitor.rs 🖥️ 多显示器支持,事件驱动检测
plugin_manager.rs 🔌 插件生命周期管理(安装、卸载、代码注入)
settings.rs 💾 设置文件读写,浅合并策略
update.rs 🔄 自动更新检查与安装

🔌 Tauri 插件

tauri-plugin-opener        → 外部链接处理
tauri-plugin-store         → 前端数据存储
tauri-plugin-window-state  → 窗口状态持久化
tauri-plugin-log           → 日志记录
tauri-plugin-updater       → 自动更新
tauri-plugin-shell         → Shell 命令执行

📖 文档

  • 📝 测试文档 - 详细的测试指南(Rust + TypeScript,332+ 测试用例)
  • 🔌 插件架构 - 插件系统设计与开发指南

⚠️ 免责声明

本项目仅为个人学习和使用的第三方客户端,与腾讯公司及微信读书团队无任何关联

✅ 承诺

  • 完全开源
  • 无隐私收集
  • 无广告植入
  • 无商业用途

📡 数据来源

所有内容均通过官方接口
weread.qq.com
直接加载

🙏 声明

仅供学习交流
请支持正版
遵守相关法律法规


📄 开源协议

MIT License © 2026


Built with ❤️ using Rust & Tauri

如果这个项目对你有帮助,请给个 ⭐️ Star 支持一下!

About

轻量级微信读书客户端,体积小,页面宽,自动翻页,体验增强 A Weixin Reader Desktop with Auto-turning and Wide-pager

Topics

Resources

License

Stars

Watchers

Forks