explaingit

ceelog/openweread

15TypeScriptAudience · developerComplexity · 2/5ActiveLicenseSetup · moderate

TLDR

TypeScript SDK and CLI for the WeChat Read Skills API. Inspect your bookshelf, highlights, notes, and reading stats from the terminal or your own code.

Mindmap

mindmap
  root((OpenWeRead))
    Inputs
      API key wrk
      Book search query
      Book ID
    Outputs
      Book metadata
      Reading progress
      Highlights and notes
      JSON via --json
    Use Cases
      Export reading data
      Build personal stats dashboard
      Automate bookshelf scripts
    Tech Stack
      TypeScript
      Node
      pnpm
      vitest
      biome

Things people build with this

USE CASE 1

Export your WeChat Read highlights and notes to JSON for backup

USE CASE 2

Build a personal reading stats dashboard from your monthly WeChat Read activity

USE CASE 3

Script bookshelf and progress queries from the terminal using the openweread CLI

USE CASE 4

Embed WeChat Read data in a TypeScript app via the SDK client

Tech stack

TypeScriptNodepnpmvitestbiome

Getting it running

Difficulty · moderate Time to first run · 30min

You need a personal wrk-xxxxxxxx API key from the WeChat Read Skills website before any command works.

MIT license, free to use, modify, and redistribute, even commercially, as long as the copyright notice is kept.

In plain English

OpenWeRead is a TypeScript toolkit for talking to WeChat Read, a popular Chinese e-reader app made by Tencent. WeChat Read recently published an official set of public endpoints called Skills, and this project wraps those endpoints in two ways: a software development kit, or SDK, that other TypeScript programs can pull in, and a command-line tool that you run in your terminal to get information out of your account. The README is written in Chinese. To use either tool you first need a personal API key, formatted like wrk-xxxxxxxx, which you obtain from the WeChat Read Skills website linked in the README. The key is then stored in an environment variable called WEREAD_API_KEY. Installation is one npm command for the global command-line tool, or pnpm add openweread inside an existing project to use the SDK. The command-line tool covers most of what a reader would want to inspect: searching for books, fetching a book's metadata or chapter list, checking reading progress, showing your bookshelf including audio books, monthly reading stats, your bookmarks and highlights for a given book, your personal notes and reviews, the popular highlights other users have made on a book, recommended and similar books, and your overall profile. Any command can be given a --json flag to print the raw JSON for piping to other tools. The SDK exposes the same features as JavaScript methods on a client object, and includes a lower-level call function for endpoints that the high-level wrappers do not cover yet. The project uses vitest for tests, biome for linting, and is released under the MIT license.

Copy-paste prompts

Prompt 1
Install the openweread CLI, set WEREAD_API_KEY, and dump my bookshelf to JSON
Prompt 2
Use OpenWeRead in a Node script to export all highlights for one book and write them as Markdown
Prompt 3
Show me how to call an endpoint OpenWeRead does not wrap yet using its low-level call function
Prompt 4
Build a small dashboard that reads monthly reading stats from OpenWeRead and renders charts
Open on GitHub → Explain another repo

Generated 2026-05-22 · Model: sonnet-4-6 · Verify against the repo before relying on details.