Skip to content

About

微信读书/WeRead 桌面版 客户端 (支持Mac, Windows, Linux, 基于Electron)

Resources

Stars

80 stars

Watchers

3 watching

Forks

Repository files navigation

WeRead_Desktop / 微信读书桌面版客户端

WeRead Desktop App (Unofficial) / 微信读书网页版桌面客户端(非官方)

中文说明

WeRead Desktop screenshot

Description

WeRead Desktop is a small Electron wrapper for the official WeRead website. It provides a focused desktop window on macOS, Windows, and Linux while leaving reading, account, and library functionality to WeRead itself.

This project is not affiliated with or endorsed by Tencent or WeRead. Login and reading data remain in the dedicated Chromium website session and are not read by this project.

Features

  • Supports macOS (Intel and Apple Silicon), Windows 10 or later, and Linux.
  • Keeps the existing login session and restores the previous window position and size.
  • Provides native Home, Back, Forward, Reload, Retry, About, and update-check commands.
  • On Linux and Windows, optionally auto-hides the menu bar and remembers the choice. Use View → Auto-hide Menu Bar (Alt to Show) or Ctrl+Shift+M to toggle; press Alt to reveal it temporarily. The menu bar stays visible by default. macOS retains its system menu.
  • Shows a local recovery page when WeRead is offline or the renderer fails.
  • Keeps https://weread.qq.com inside the app and opens other user-initiated HTTPS links in the default browser.
  • Runs remote content with Electron sandboxing, context isolation, no Node.js integration, and no preload bridge.
  • Requests no camera, microphone, location, notification, device, or filesystem permissions.
  • Checks GitHub Releases monthly by default; automatic checks can be set to daily, weekly, monthly, or disabled, while manual checks remain available.
  • Contains no telemetry, advertising, injected webpage scripts, or native WeRead API integration.

What's new

v1.1.3

  • Added optional menu bar auto-hide on Linux and Windows, with Alt to reveal, Ctrl+Shift+M to toggle, and persistent preferences.
  • Updated Electron from 44.4.5 to 44.7.2 and electron-builder from 26.16.1 to 26.17.0, incorporating dependency updates proposed in PRs #13 and #9.
  • Repaired the dependency lockfile for clean installs and updated the vulnerable transitive build dependency http-cache-semantics to 4.3.0.
  • Added Linux native menu interaction tests with screenshots and a Cinnamon candidate-testing checklist before release.

v1.1.2

  • Reworded the offline screen as a neutral connection landing page so automated AppImage catalog checks recognize it as useful application content rather than an error dialog.

v1.1.1

  • Fixed blank-window startup when WeRead is unavailable by serving a clear local recovery screen through a restricted internal protocol.
  • Prevented concurrent failure handlers from interrupting recovery-page navigation.
  • Strengthened package verification so required recovery resources cannot be omitted unnoticed.
  • Replaced the oversized universal macOS build with separate Apple Silicon and Intel packages, and removed unused Electron language resources.
  • Updated Electron from 44.4.3 to 44.4.5.

v1.1.0

  • Upgraded from Electron 33 to the Electron 44 release line.
  • Added strict navigation, popup, redirect, and web-permission controls.
  • Added single-instance behavior, window-state restoration, native navigation commands, and an offline/crash recovery page.
  • Added configurable update notifications that link to the fixed GitHub Releases page without downloading or installing anything automatically.
  • Added reproducible dependency locking, automated tests, dependency auditing, package-content checks, and Electron fuse verification.
  • Added GitHub Actions release builds for macOS universal, Windows x64, and Linux x64, with SHA-256 checksums and clearly labeled unsigned artifacts.
  • Removed unused dependencies and the empty preload script.
  • Disabled Electron cookie encryption to avoid macOS Keychain prompts.

The v1.1.0 review, implementation, tests, and release-hardening work were assisted by OpenAI Codex.

Previous releases:

  • v1.0.4 fixed grouped-book navigation and updated Electron and electron-builder.
  • v1.0.3 updated Electron and electron-builder.
  • v1.0.2 adopted electron-builder and added Apple Silicon, Windows, and Linux support.
  • v1.0.1 updated documentation.
  • v1.0.0 was the initial Intel macOS release.

Download

Download the newest build from GitHub Releases.

Platform Architecture Format
macOS Apple Silicon (arm64) DMG
macOS Intel (x64) DMG
Windows 10 or later x64 NSIS installer
Linux x64 AppImage and deb

Release files include SHA-256 checksums and a signing-status note. macOS and Windows artifacts are signed when signing credentials are configured. A filename ending in -unsigned indicates that operating-system trust warnings are expected.

Installation

macOS

Download the arm64 DMG for an Apple Silicon Mac or the x64 DMG for an Intel Mac. Open it and drag WeRead into the Applications folder. Unsigned builds may require an explicit override in macOS Privacy & Security settings.

Windows

Download and run the x64 installer. Windows SmartScreen may warn when the installer is unsigned.

Linux

Install the deb package with your package manager, or mark the AppImage executable and run it directly.

Development and build

Node.js 24 and npm are required.

npm ci
npm start

Run the local checks:

npm run check
npm run audit

Build on the native platform:

npm run dist:mac
npm run dist:win
npm run dist:linux

GitHub Actions is the recommended way to create all three platforms. Run the Release workflow manually to produce downloadable candidate artifacts without publishing a release. After testing them, push a vX.Y.Z tag matching package.json to build and publish the GitHub Release. See the release checklist for the complete procedure, and the menu bar candidate test guide for Cinnamon testing before release.

Security and privacy

Only the exact https://weread.qq.com origin can navigate inside the application. Other HTTPS links open in the system browser after a user action; HTTP, credential-bearing, malformed, local-file, JavaScript, and custom-scheme URLs are blocked. Web permissions are denied except for fullscreen and sanitized clipboard writes from the WeRead main frame.

The legacy session partition name is intentionally retained so existing users remain signed in. Application-owned state files contain only window geometry, menu bar preferences, update-check timestamps, and update-check preferences. Electron cookie encryption is disabled to avoid macOS Keychain prompts; website session data remains in Chromium's local profile under the operating-system user account.

Contributors and thanks

  • @ChRomiumCR — requested menu bar hiding and tested both the deb and AppImage candidates on Linux Mint 22.3 / Cinnamon 6.9 / X11 (#12).

Bug reports, feature suggestions, and testing are welcome contributions alongside code and documentation.

Notes

This remains a small hobby project intended to make the official WeRead website more convenient to access. Contributions, bug reports, and suggestions are welcome.

License

MIT

About

微信读书/WeRead 桌面版 客户端 (支持Mac, Windows, Linux, 基于Electron)

Resources

Stars

80 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages