Back to projects

Personal project · 2026–now

Shen

A local-first research IDE for scientists: one desktop app pairing your Zotero library, a LaTeX/Python editor and a private AI assistant that answers straight from your own papers, with sources you can click back to.

Desktop app Local-first AI / RAG
Shen: editor with Zotero library and AI assistant side by side

About the project

Writing a paper usually means juggling three tools at once: a reference manager on one side, an editor on the other, and, increasingly, an AI chat that knows nothing about the papers you actually cite. Shen collapses that into a single three-panel desktop workspace: your Zotero library, a LaTeX/Python editor, and an assistant that reads from your own library instead of the open web.

The assistant runs citation-grounded retrieval (RAG) over your papers, so every answer ships with its sources. The magic moment: clicking a citation jumps the PDF viewer to the exact passage and highlights it in place, down to the bounding box on the page, so you can always trace a claim back to where it comes from. And it stays private: the library, the search index and the retrieval all run on your machine.

Main features

  • Three-panel workspace

    Bibliography, editor and assistant in one window, modelled on the VS Code interaction you already know.

  • Zotero, natively

    Your library synced through Zotero's official Web API (one-click OAuth), not a fragile database hack, with a built-in PDF reader.

  • A real editor

    LaTeX, Python and text with open/save, syntax support and an integrated terminal, so writing and analysis live side by side.

  • Grounded AI assistant

    Hybrid semantic + keyword search over your papers; bring your own key (Anthropic by default) or run fully offline with a local model.

  • Clickable citations

    Every source jumps to and highlights the exact passage in the PDF, at the right position on the page.

  • Local-first by design

    No account, no cloud store; your papers never leave the machine.

Tech stack

Shen is a Tauri 2 desktop app: a Rust core for OS access and Zotero sync, a React/TypeScript interface, and a Python service for the retrieval pipeline. The two sides talk only through a typed, versioned contract, so the app and the AI engine evolve independently. Under the hood, retrieval combines a Qdrant vector store with a GROBID pass that extracts page-level coordinates, the basis for those pixel-accurate citation highlights.