# deep-student
**Repository Path**: woerwin/deep-student
## Basic Information
- **Project Name**: deep-student
- **Description**: No description available
- **Primary Language**: TypeScript
- **License**: AGPL-3.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-03-23
- **Last Updated**: 2026-03-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
[简体中文](./README_CN.md) | **English**

# DeepStudent
### An open-source, local-first AI learning workbench
> It's not that learning is hard — it's that learning tools are too scattered.
Study materials, note-taking, mind maps, quizzes, translation, and flashcard review — all in one unified learning workbench.
> Think of it as: **NotebookLM + Notion + XMind + Quizlet + DeepL**
> but they all share the same learning data and workflow.
[](https://github.com/helixnow/deep-student/releases/latest)
[](LICENSE)
[](https://github.com/helixnow/deep-student)
[Website](https://deepstudent.cn) ·
[**Download**](#installation) ·
[Quick Start](https://deepstudent.cn/docs/) ·
[User Guide](https://deepstudent.cn/docs/) ·
[Report Issues](https://github.com/helixnow/deep-student/issues) ·
[Contributing](./.github/CONTRIBUTING.md)
---
## Why DeepStudent
Learning workflows are spread across too many tools — read here, take notes there, build mind maps elsewhere, review in yet another app.
PDF readers, XMind, translation apps, Notion, LMS platforms, arXiv, Anki, DeepSeek/ChatGPT… every tool is its own silo. Once your learning data is scattered, you spend more energy shuttling between tools than actually learning.
DeepStudent's answer: **give AI native read-write access to all your learning data.** One sentence from you, and it generates a mind map from your textbook, creates questions from your materials, turns key points into flashcards, searches and downloads papers, or researches the web and writes conclusions into your notes — all without leaving the workbench.
---
## Understand It Through Products You Know
| Capability | **DeepStudent** | NotebookLM | Open Notebook | DeepTutor | Notion/Obsidian |
|---|:---:|:---:|:---:|:---:|:---:|
| AI Q&A over materials | **✓ 9 providers** | ✓ Gemini only | ✓ multi-model | ✓ multi-agent | △ Notion AI |
| Cross-platform out-of-box | **✓ Win/Mac/Linux/Android** | ✓ all platforms | △ Docker | △ Docker | ✓ all platforms |
| Smart memory system | **✓ AI-driven persistent** | ✗ | ✗ | △ session memory | ✗ |
| Note-taking system | **✓ rich text+tags+AI** | △ simple notes | △ AI notes | △ notebook | ✓ core feature |
| AI-generated mind maps | **✓** | ✓ | ✗ | △ visualization | ✗ |
| AI quiz + practice modes | **✓** | ✓ | ✗ | ✓ exam-style | ✗ |
| Flashcards + SRS | **✓ Anki ecosystem** | △ no SRS | ✗ | ✗ | ✗ |
| Translation + close reading | **✓ 7 domain presets** | ✗ | ✗ | ✓ PDF translation | ✗ |
| Cross-module data flow | **✓** | △ | △ | △ | △ |
> **The core difference isn't "more features" — it's the unified data layer.**
> The same material can be read, queried, turned into a mind map, used to generate quizzes, made into flashcards, researched, and written back — no data shuttling between apps.
📊 More comparison dimensions (infrastructure · ecosystem · collaboration)
| Capability | **DeepStudent** | NotebookLM | Open Notebook | DeepTutor | Notion/Obsidian |
|---|:---:|:---:|:---:|:---:|:---:|
| Local-first storage | **✓** | ✗ cloud | ✓ Docker | ✓ Docker | △ |
| Cloud sync | **△ experimental** | ✓ native | ✗ | ✗ | ✓ |
| Open source / self-host | **✓ AGPL-3.0** | ✗ | ✓ | ✓ AGPL-3.0 | ✗ |
| Unified data layer (VFS) | **✓** | ✗ | ✗ | ✗ | ✗ |
| Auto-index on import | **✓ incl. OCR** | ✓ | ✓ | ✓ | △ |
| Mind map ↔ outline mode | **✓** | ✗ | ✗ | ✗ | △ |
| Deep research + papers | **✓ multi-engine+arXiv** | △ Discover | ✗ | ✓ | ✗ |
| AI essay correction | **✓ multi-scenario** | ✗ | ✗ | ✗ | △ Notion AI |
| MCP ecosystem / skills | **✓ native+presets** | ✗ | ✗ | ✓ MCP registry | ✗ |
| Real-time collaboration | **✗** | △ sharing | ✗ | ✗ | ✓ |
| Community & ecosystem | **△ new project** | ✓ | △ new project | △ new project | ✓ rich plugins |
---
## Core Capabilities
### 1. Study with AI Chat
Study around your materials, not just general chat.
- Multi-modal input (drag & drop images / PDF / Word) with multi-turn conversation
- Reference panel for injecting knowledge base notes or textbooks into context, with real-time token estimation
- Deep reasoning mode (chain-of-thought), showing the full thinking process
- Multi-tab sessions & session branching — explore different approaches
- Multi-model comparison (experimental): side-by-side answers from multiple models
- Session grouping, group-level System Prompt, default skill configuration
- Sub-agent execution (experimental): automatic task decomposition, background completion
📸 View Screenshots





### 2. Learning Hub
Organize materials, notes, questions, mind maps, translations, and flashcards in one place.
- Full-format management: notes / textbooks / question banks / mind maps
- Auto-vectorization pipeline on import (OCR → chunking → embedding → indexing), with real-time status
- Built-in PDF / DOCX reader with dual-page view and bookmarks
- Reading mode toggle — prevents keyboard popup on mobile during scrolling
- Content search across sessions and resources with session tagging
- Resource export with format-specific adapters
- Unified data source for downstream Q&A, mind maps, question generation, and flashcards
📸 View Screenshots



### 3. Knowledge Mind Maps
Structure your knowledge, not just get answers.
- Generate a complete knowledge structure from a single sentence (e.g., "generate a high school biology mind map")
- Multi-round conversational editing of nodes
- Toggle between outline view and mind map view, right-click menu editing
- Node masking for recitation practice
📸 View Screenshots






### 4. Question Sets & Practice
Turn textbooks and exam papers into practice-ready question banks.
- Upload textbooks / exam papers, AI auto-extracts or generates question sets
- Daily practice, timed practice, mock exams with auto-grading
- Question history view — review past practice sessions and track progress over time
- AI deep analysis of knowledge points and problem-solving approaches
- Mastery tracking by knowledge point to pinpoint weak areas
📸 View Screenshots





### 5. Anki Smart Flashcards
Push understanding into long-term memory.
- Trigger card creation via natural language in chat (e.g., "turn this document into flashcards"), with batch generation
- Visual template editor (HTML / CSS / Mustache) with real-time preview
- Task board for batch card creation progress tracking with checkpoint resume
- 3D flip preview, one-click sync to Anki
📸 View Screenshots






### 6. PDF / DOCX Smart Reader
Study around your documents, not just open them.
- Full format support: PDF, DOCX
- Split-screen: chat on the left, read on the right
- Select pages or passages to auto-inject into chat context
- AI responses can include page number references
📸 View Screenshots




📋 More capabilities (Translation · Essay · Research · Papers · Memory · Skills · Data Governance)
### 7. Translation Workbench
Translation as part of your learning chain.
- Full-text translation with synchronized left-right scrolling
- Paragraph-level bilingual comparison, ideal for close reading
- Domain presets: academic / technical / literary / legal / medical
- Custom prompts and terminology preferences
📸 View Screenshots



### 8. AI Essay Grading
Chinese and English essay grading and polishing.
- Multi-scenario: Gaokao / IELTS / TOEFL / CET-4/6 / Postgraduate entrance exam
- Multi-dimensional AI scoring (vocabulary, grammar, coherence, etc.) with iterative grading
- Revision suggestions with highlights
- Sentence-by-sentence polish comparison
- Customizable scoring dimensions and grading settings
📸 View Screenshots




### 9. Deep Research
Multi-step, long-chain research agent.
- Interactive confirmation of research depth and format preferences before starting
- Automatic task decomposition: define objectives → web search → local retrieval → analysis → report generation
- 7 search engines supported (Google CSE / SerpAPI / Tavily / Brave / SearXNG / Zhipu / Bocha)
- Reports auto-saved as notes
📸 View Screenshots





### 10. Academic Paper Search & Management
One-stop paper retrieval, download, and citation.
- Search via arXiv / OpenAlex with structured metadata
- Batch PDF download, auto-saved to VFS, multi-source fallback (arXiv → Export mirror → Unpaywall)
- SHA256 deduplication
- BibTeX, GB/T 7714, APA citation formats
- DOI auto-resolution to open-access links
📸 View Screenshots



### 11. Smart Memory
Gets smarter the more you use it.
Inspired by [mem0](https://github.com/mem0ai/mem0) and [memU](https://github.com/NevaMind-AI/memU), implementing a complete memory lifecycle on desktop.
- Auto-extracts user facts after each conversation (identity / preferences / goals / subject status)
- Vector comparison of new vs. existing memories, LLM decides ADD / UPDATE / APPEND / DELETE / NONE
- Batch memory write with write idempotency for data integrity
- Aggregated into user profile, auto-injected into subsequent conversations
- Tag system: 90-day inactivity → downweight; frequent hits → upweight; search hits auto-rehabilitate
- Browse, edit, batch delete, export
- Privacy mode: one-click disable of all external API calls
📸 View Screenshots




### 12. Skill System & MCP Extensions
An extensible workbench, not a closed feature set.
- Skills load AI capabilities on demand — tools only loaded when activated, saving tokens
- 12 built-in skills: Cards · Research · Paper · Mind Map · Q-Bank · Memory · Tutor · Literature Review · Exam Analysis · Session Manager · Office Suite · Todo
- Three-tier loading (Built-in → Global → Project-level), custom skills via SKILL.md
- MCP protocol compatible, connecting external tools like Arxiv, Context7
- 9 pre-configured model providers, plus any OpenAI-compatible endpoint
- Adapted for Gemini 3, GPT-5.2 Pro, GLM-5, Seed 2.0, Kimi K2.5, and more
📸 View Screenshots





### 13. Local-First & Data Governance
Your learning data stays under your control.
- All data stored locally (SQLite + LanceDB + Blob)
- Full backup & recovery, data import/export
- AES-256-GCM encryption for sensitive data, dual-slot A/B switching
- Audit logs for full traceability
- Cloud sync (experimental): S3-compatible storage & WebDAV
## Installation
[](#installation)
[](#installation)
[](#installation)
[](#installation)
Download the latest version from [GitHub Releases](https://github.com/helixnow/deep-student/releases/latest):
| Platform | Package | Architecture |
|:---:|---|---|
| macOS | `.dmg` | Apple Silicon / Intel |
| Windows | `.exe` | x86_64 |
| Linux | `.deb` / `.AppImage` | x86_64 / arm64 |
| Android | `.apk` | arm64 |
> iOS can be built locally via Xcode. See [Build Configuration Guide](./docs/BUILD-CONFIG.md).
### Getting Started
After your first launch, try this path:
1. Import a PDF / textbook / paper
2. Start a conversation around the material
3. Generate a mind map
4. Create a question set or flashcards
5. Use translation / close reading to deepen understanding
This path best demonstrates DeepStudent's core value: not isolated features, but a complete learning chain.
---
## What Makes It Different Technically
If you're a developer, this section is for you.
- **Unified learning data layer** — One material can be read, searched, structured, practiced, memorized; upper-layer apps are different views of the same data
- **Local-first** — Metadata (SQLite), vector indices (LanceDB), file content (Blob) all stored locally
- **Skill-driven architecture** — Capabilities load on demand, combined with MCP protocol and multi-search-engine integration
- **End-to-end loop** — Import → understand → research → structure → practice → flashcards → memory
---
## Architecture Overview
```
DeepStudent
├── Learning Materials: PDF / DOCX / textbooks / questions / notes / mind maps / translations
├── Unified Data Layer: VFS + SQLite metadata + LanceDB vector index + Blob file storage
├── Workflow Layer: chat / research / mind map / question sets / translation / essay / memory
├── Extension Layer: Skills / MCP / multi-search engines / custom model providers
└── Interface Layer: Desktop (macOS · Windows) & Mobile (Android · iOS)
```
View Code Structure
```
DeepStudent
├── src/ # React Frontend
│ ├── chat-v2/ # Chat V2 Conversation Engine
│ │ ├── adapters/ # Backend Adapters (TauriAdapter)
│ │ ├── skills/ # Skill System (builtin / builtin-tools / loader)
│ │ ├── components/ # Chat UI Components
│ │ └── plugins/ # Plugins (event handling, tool rendering)
│ ├── components/ # UI Components (feature module pages)
│ ├── stores/ # Zustand State Management
│ ├── mcp/ # MCP Client & Built-in Tool Definitions
│ ├── essay-grading/ # Essay Grading Frontend
│ ├── translation/ # Translation Workbench Frontend
│ ├── command-palette/ # Command Palette (shortcuts / favorites / pinyin search)
│ ├── dstu/ # DSTU Resource Protocol & VFS API
│ ├── api/ # Frontend API Layer (Tauri invoke wrappers)
│ ├── hooks/ # React Hooks (theme, hotkeys, platform detection, etc.)
│ ├── services/ # Service Layer (update checker, audit, logging, etc.)
│ ├── engines/ # Rendering Engines (Markdown, code highlighting, etc.)
│ ├── debug-panel/ # Debug Panel & Dev Tools
│ └── locales/ # i18n Internationalization (CN / EN)
├── src-tauri/ # Tauri / Rust Backend
│ └── src/
│ ├── chat_v2/ # Chat Pipeline & Tool Executor
│ ├── llm_manager/ # Multi-Model Management & Adaptation (9 built-in providers)
│ ├── vfs/ # Virtual File System & Vectorized Indexing
│ ├── dstu/ # DSTU Resource Protocol Backend
│ ├── tools/ # Web Search Engine Adapters (7 engines)
│ ├── memory/ # Smart Memory (self-evolving profile / 3-layer arch / LLM decision)
│ ├── mcp/ # MCP Protocol Implementation
│ ├── translation/ # Translation Pipeline Backend
│ ├── cloud_storage/ # Cloud Sync (S3 / WebDAV)
│ ├── data_governance/ # Backup, Audit, Migration
│ ├── essay_grading/ # Essay Grading Backend
│ ├── qbank_grading/ # Question Bank AI Grading
│ ├── crypto/ # Encryption & Secure Storage (AES-256-GCM)
│ ├── multimodal/ # Multimodal Processing
│ ├── ocr_adapters/ # OCR Adapters (6 engines)
│ └── llm_usage/ # LLM Usage Tracking
├── docs/ # User Docs & Design Docs
├── tests/ # Vitest Unit Tests & Playwright CT
└── .github/workflows/ # CI / Release Automation
```
---
## Tech Stack
| Area | Technology |
|------|----------|
| **Frontend Framework** | React 18 + TypeScript 5.6 + Vite 6 |
| **UI Components** | Tailwind CSS 3 + Radix UI + Lucide Icons |
| **Desktop / Mobile** | Tauri 2 (Rust) — macOS · Windows · Android · iOS |
| **Data Storage** | SQLite (Rusqlite) + LanceDB (Vector Search) + Local Blob |
| **State Management** | Zustand 5 + Immer |
| **Editors** | Milkdown (Markdown) + CodeMirror (Code) |
| **Document Processing** | PDF.js + pdfium-render + Multi-engine OCR |
| **Search Engines** | Google CSE · SerpAPI · Tavily · Brave · SearXNG · Zhipu · Bocha |
| **CI / CD** | GitHub Actions — lint · type-check · build · Release Please |
---
## Development
### Prerequisites
| Tool | Version | Description |
|------|------|------|
| **Node.js** | v20+ | Frontend build |
| **Rust** | Stable | Backend compilation (recommended via [rustup](https://rustup.rs)) |
| **npm** | — | Package manager (do not mix with pnpm / yarn) |
### Local Development
```bash
git clone https://github.com/helixnow/deep-student.git
cd deep-student
npm ci
npm run dev
npm run dev:tauri
```
For more build and packaging info, see [BUILD-CONFIG.md](./docs/BUILD-CONFIG.md)
---
## Documentation
| Document | Description |
|------|------|
| [Quick Start](https://deepstudent.cn/docs/) | 5-minute getting started guide |
| [User Guide](https://deepstudent.cn/docs/) | Complete feature documentation |
| [Build Configuration](./docs/BUILD-CONFIG.md) | Cross-platform build & packaging |
| [Changelog](./CHANGELOG.md) | Version change history |
| [Security Policy](./.github/SECURITY.md) | Vulnerability reporting process |
---
## Roadmap
On the way to **v1.0**. Near-term focus:
- User experience & stability improvements
- Desktop & mobile UI/UX optimization
- Cloud sync & backup enhancements
- Resource full lifecycle management optimization
- Skill & workflow expansion
- More model integrations & adaptations
---
## Project History
DeepStudent started as a Python demo in March 2025 and has evolved through nearly a year of continuous iteration:
| Date | Milestone |
|------|--------|
| **2025.03** | 🌱 Project Genesis — Python demo prototype, validating AI-assisted learning |
| **2025.05** | 🔄 Tech Stack Migration — Transitioned to Tauri + React + Rust architecture |
| **2025.08** | 🎨 Major UI Overhaul — Migrated to shadcn-ui, introduced Chat architecture & knowledge base vectorization |
| **2025.09** | 📝 Note System & Templates — Milkdown editor integration, Anki template batch import |
| **2025.10** | 🌐 i18n & E2E Testing — Full i18n coverage, Playwright testing, Lance vector storage migration |
| **2025.11** | 💬 Chat V2 Architecture — New conversation engine (multi-model comparison, tool event system, snapshot monitoring) |
| **2025.12** | ⚡ Performance — Parallel session loading, config caching, DSTU resource protocol |
| **2026.01** | 🧩 Skill System & VFS — File-based skill loading, unified Virtual File System |
| **2026.02** | 🚀 Open Source Release — Renamed to DeepStudent, released v0.9.23; added Translation Workbench, Cloud Sync, Session Branching, Smart Memory enhancements, and more |
| **2026.03** | 🐧 Linux & Hardening — Linux build support (deb/AppImage); Todo system; question history view; model capability auto-detection; reading mode for mobile; content search & session tagging; resource export; memory batch write & idempotency; cross-session permission checks; released v0.9.30–v0.9.33 |
---
## Contributing
Help make DeepStudent better.
1. Read [CONTRIBUTING.md](./.github/CONTRIBUTING.md) for development workflow
2. Ensure `npm run lint` and type checks pass before submitting a PR
3. Bugs & suggestions via [Issues](https://github.com/helixnow/deep-student/issues)
---
## License
[AGPL-3.0](./LICENSE)
---
## Acknowledgments
DeepStudent would not be possible without these outstanding open-source projects:
**Frameworks & Runtimes**
[Tauri](https://tauri.app) · [React](https://react.dev) · [Vite](https://vite.dev) · [TypeScript](https://www.typescriptlang.org) · [Rust](https://www.rust-lang.org) · [Tokio](https://tokio.rs)
**Editors & Content Rendering**
[Milkdown](https://milkdown.dev) · [ProseMirror](https://prosemirror.net) · [CodeMirror](https://codemirror.net) · [KaTeX](https://katex.org) · [Mermaid](https://mermaid.js.org) · [react-markdown](https://github.com/remarkjs/react-markdown)
**UI & Styling**
[Tailwind CSS](https://tailwindcss.com) · [Radix UI](https://www.radix-ui.com) · [Lucide](https://lucide.dev) · [Framer Motion](https://www.framer.com/motion) · [Recharts](https://recharts.org) · [React Flow](https://reactflow.dev)
**Data & State**
[LanceDB](https://lancedb.com) · [SQLite](https://www.sqlite.org) / [rusqlite](https://github.com/rusqlite/rusqlite) · [Apache Arrow](https://arrow.apache.org) · [Zustand](https://zustand.docs.pmnd.rs) · [Immer](https://immerjs.github.io/immer) · [Serde](https://serde.rs)
**Document Processing**
[PDF.js](https://mozilla.github.io/pdf.js/) · [pdfium-render](https://github.com/nicholasgasior/pdfium-render) · [docx-preview](https://github.com/nicholasgasior/docx-preview) · [docx-rs](https://github.com/cstkingkey/docx-rs) · [umya-spreadsheet](https://github.com/MathNya/umya-spreadsheet) · [Mustache](https://mustache.github.io) · [DOMPurify](https://github.com/cure53/DOMPurify)
**Internationalization & Toolchain**
[i18next](https://www.i18next.com) · [date-fns](https://date-fns.org) · [Vitest](https://vitest.dev) · [Playwright](https://playwright.dev) · [ESLint](https://eslint.org) · [Sentry](https://sentry.io)
---
Made with ❤️ for Lifelong Learners