docs: expand README with features, changelog, and English version.
Document voice lecture, selection explain, multi-paper compare, and link between zh-CN and English readme files. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+114
@@ -0,0 +1,114 @@
|
||||
# ChatPapers
|
||||
|
||||
**Language / 语言**: [中文](readme.md) | English
|
||||
|
||||
An AI paper reading and summarization plugin for **Zotero 9**: chat with PDFs, generate summaries, compare multiple papers, listen to AI voice lectures, and save results as Zotero notes—all inside Zotero.
|
||||
|
||||
## Features
|
||||
|
||||
### Paper chat (ChatPapers)
|
||||
|
||||
- **ChatPapers** panel in the PDF / item sidebar
|
||||
- One-click summary, add selection to context, streaming replies, stop generation
|
||||
- Save replies as Zotero child notes
|
||||
- Provider presets: **Ollama / LM Studio / OpenRouter / OpenAI / DeepSeek / SiliconFlow / Custom**
|
||||
- Sidebar header: **Open in separate window**, **Adaptive height** (consistent with other Zotero plugins)
|
||||
|
||||
### Multi-paper comparison
|
||||
|
||||
- Start **Compare papers** from the main-window item context menu
|
||||
- Add up to 8 papers for **Compare**, **Summarize each**, **Common themes**, and **Topic review**
|
||||
|
||||
### Voice lecture
|
||||
|
||||
- **Voice lecture** sidebar: one-click **Prepare** → listen to an AI walkthrough of the full paper
|
||||
- **Overview**: segmented summary, play beat by beat
|
||||
- **Paragraph reading**: original text first, then translation/explanation; switch **By paragraph** / **By sentence**
|
||||
- **Highlight sync** in the PDF reader while playing (including multi-line selections)
|
||||
- Typed Q&A with spoken answers; save lecture notes as Zotero child notes
|
||||
- Configurable local TTS (e.g. Piper) and cloud TTS; optional MinerU path in preferences for structured PDF parsing
|
||||
|
||||
### Selection explain & read aloud
|
||||
|
||||
- After selecting text in a PDF, use **Explain** from the selection popup or sidebar
|
||||
- AI generates syntax/terminology and context explanations, then reads original + translated/explained audio
|
||||
- Reuses prepared lecture cache when the selection matches an already prepared sentence
|
||||
- Sidebar also supports **Open in separate window** and **Adaptive height**
|
||||
|
||||
## Documentation
|
||||
|
||||
| Document | Description |
|
||||
| --- | --- |
|
||||
| [Requirements (zh-CN)](docs/requirements.md) | Product scope and acceptance criteria |
|
||||
| [Development (zh-CN)](docs/development.md) | Architecture and developer guide |
|
||||
| [Architecture & roadmap (zh-CN)](docs/newidea/) | Voice lecture and future capabilities |
|
||||
|
||||
## Development
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run build # outputs .scaffold/build/*.xpi
|
||||
npm run start # requires Zotero 9 locally; configure .env (see .env.example)
|
||||
```
|
||||
|
||||
## Installation
|
||||
|
||||
1. Run `npm run build`
|
||||
2. In Zotero: Tools → Add-ons → Install Add-on From File
|
||||
3. Select `.scaffold/build/chatpapers.xpi` (exact filename may vary)
|
||||
|
||||
## Usage
|
||||
|
||||
### Paper chat
|
||||
|
||||
1. Preferences → ChatPapers: choose a Provider (e.g. Ollama) and set the model
|
||||
2. Open a PDF or select an item, then open **ChatPapers** in the item pane sidebar
|
||||
3. Ask questions or summarize → save replies as notes
|
||||
|
||||
### Multi-paper comparison
|
||||
|
||||
1. Select 2 or more items in the Zotero main window
|
||||
2. Right-click → **ChatPapers: Compare papers**
|
||||
3. Add papers, enter a topic, and use compare or review actions
|
||||
|
||||
### Voice lecture
|
||||
|
||||
1. Preferences → ChatPapers → **Voice lecture**: configure LLM and TTS; set MinerU path if you need structured PDF parsing
|
||||
2. Open an item with a PDF attachment, then open **Voice lecture** in the sidebar
|
||||
3. Click **Start preparation**, then choose overview or paragraph/sentence reading
|
||||
4. The PDF highlights the current passage while audio plays
|
||||
|
||||
### Selection explain & read aloud
|
||||
|
||||
1. Select a sentence or paragraph in the PDF reader
|
||||
2. Click **Explain** in the selection popup, or **Explain & read selection** in the **Voice lecture** sidebar
|
||||
3. Wait for generation, then audio plays automatically; view details and replay from the sidebar
|
||||
|
||||
## Changelog
|
||||
|
||||
### Unreleased (main, after v0.2.1)
|
||||
|
||||
- **Voice lecture**: preparation, overview, paragraph/sentence reading, TTS playback, note export
|
||||
- **PDF highlight sync**: highlight matching text while playing; fix multi-line selections only highlighting one line
|
||||
- **Selection explain & read aloud**: PDF selection popup + sidebar; reuse prepared sentence cache when matched
|
||||
- **Playback exclusivity**: fix overlapping audio for multi-sentence selections; stop audio when the pane is closed
|
||||
- **Sidebar enhancements**: separate window and adaptive height for chat and voice lecture panes
|
||||
- **Branding**: updated plugin logo
|
||||
|
||||
### v0.2.1
|
||||
|
||||
- Improved release workflow and installable `.xpi` packaging
|
||||
|
||||
### v0.2.0
|
||||
|
||||
- **Multi-paper comparison**: compare, summarize each, common themes, topic review (up to 8 papers)
|
||||
|
||||
### v0.1.0 (MVP)
|
||||
|
||||
- PDF / item sidebar chat, one-click summary, selection context, streaming replies
|
||||
- Multiple Provider presets and preferences
|
||||
- Save AI replies as Zotero child notes
|
||||
|
||||
## License
|
||||
|
||||
AGPL-3.0-or-later (based on [zotero-plugin-template](https://github.com/windingwind/zotero-plugin-template))
|
||||
Reference in New Issue
Block a user