Private β€’ Offline β€’ Cited β€” 100% local

Ask your lecture notes anything.

Drop in PDFs β†’ Ask β†’ get answers with [source p.X] + one-click study guides. Your notes never leave this laptop.

Python FastAPIElectronQwen 2.5 1.5BNo API keysChroma RAG
You: Explain mitosis checkpoints simply?

OpenBook: Mitosis has 3 main checkpoints: G1/S, G2/M, and spindle assembly. G1/S checks DNA damage [lec1.pdf p.3], G2/M checks replication [lec1.pdf p.5], spindle checks chromosome attachment [lec2.pdf p.2].

β†’ Summary + Key terms + Outline generated βœ“
β†’ History saved to Bio 101 notebook βœ“
πŸ““

Notebooks per class

Isolated Sources + history per notebook. Bio 101 never mixes with Econ 202.

πŸ’¬

Streaming + citations

Clickable [lec1.pdf p.3] citations. Only answers from your Sources.

🧠

One-click summaries

Map-reduce over top-12 chunks β†’ Summary + Key terms + Outline in ~20s.

πŸ’Ύ

Persists offline

Saved history survives restarts in local openbook.db.

🩺

Health check

Local engine status + friendly errors. No silent failures.

πŸ”’

Zero telemetry

No cloud, no keys, no tracking. Optional local analytics off by default.

How it works

1. New notebookOpen desktop β†’ New notebook β€œBio 101” β†’ Add 2 PDFs (100MB / 1000 pages max).
2. AskAsk in plain English. Unknown β†’ β€œNot in your sources β€” try rephrasing.” Scanned PDFs <200 chars warn β€œOCR not in v1”.
3. StudyGenerate summary, review key terms, click citations to verify.

Quick start

python -m venv .venv
# Windows: .venv\Scripts\activate
pip install -r backend\requirements.txt
npm --prefix frontend install

python -m uvicorn backend.main:app --port 8000
npm --prefix frontend run dev

Prereqs: Python 3.11, Node 20+. First run downloads ~3-5GB Qwen model (override with OPENBOOK_LLM_ID).

Why local?

Python for PDF/RAG control, Electron for double-click study UX, transformers + Qwen2.5-1.5B-Instruct for zero-cost private LLM. Trade-off: first run downloads models; CPU inference slower than Ollama but fully private and free forever.