Repolode
lfnovo

lfnovo/open-notebook

A self-hosted, privacy-focused alternative to Google's NotebookLM for chatting with your sources and generating podcasts, with support for many AI providers.

Open-source alternative to:NotebookLM

Stars
40,402
Forks
4,681
Open issues
179
Last commit
2 days ago

What is it?

Open Notebook is an open source research assistant modeled on Google's NotebookLM. You organize sources such as PDFs, videos, audio, web pages and Office documents into notebooks, then search them with full-text and vector search, chat with the AI using your material as context, and write notes manually or generate them from the content.

It is built to run on your own infrastructure. The project is deployed with Docker Compose, which starts a SurrealDB database alongside the web UI, REST API and background worker. Model access goes through the Esperanto library, covering more than 20 providers including OpenAI, Anthropic, Google, Mistral, Ollama and any OpenAI-compatible server such as LM Studio or vLLM, so you can run fully local models if you prefer.

The project also generates multi-speaker podcasts with configurable episode profiles, supports reasoning models such as DeepSeek-R1 and Qwen3, and exposes an MCP integration for clients like Claude Desktop. The UI is available in a number of languages, including Simplified Chinese.

Key features

  • 01Organizes PDFs, videos, audio, web pages and Office documents within notebooks.
  • 02Full-text and vector search across all sources.
  • 03Chat with AI using selected sources as context, with citations.
  • 04Supports 20+ AI providers, including local models via Ollama and LM Studio.
  • 05Generates multi-speaker podcasts from your materials.
  • 06Provides a REST API and optional password protection.

Use cases

  • Researchers who want to keep sensitive papers and notes on their own machines.
  • Students studying from a mix of PDFs, lectures and web articles.
  • Teams that want to choose or switch between cloud and local AI models.
  • Developers who need programmatic access to notebooks through the REST API.

Quick start

  1. 1

    Create a folder and download docker-compose.yml

    mkdir open-notebook && cd open-notebook curl -o docker-compose.yml https://raw.githubusercontent.com/lfnovo/open-notebook/main/docker-compose.yml
  2. 2

    Edit docker-compose.yml to set a long random OPEN_NOTEBOOK_ENCRYPTION_KEY

  3. 3

    Start the services with Docker Compose

    docker compose up -d
  4. 4

    Open http://localhost:8502 and add an AI provider in the Models settings

Things to know

  • Needs Docker and an API key from an AI provider, or a local model server such as Ollama.
  • The UI and API have no password by default and are published on all network interfaces unless you change the port settings.

Topics

FAQ

What is open-notebook?
A self-hosted, privacy-focused alternative to Google's NotebookLM for chatting with your sources and generating podcasts, with support for many AI providers. Open Notebook is an open source research assistant modeled on Google's NotebookLM. You organize sources such as PDFs, videos, audio, web pages and Office documents into notebooks, then search them with full-text and vector search, chat with the AI using your material as context, and write notes manually or generate them from the content.
Is open-notebook free to use? What license does it have?
open-notebook is open source under the MIT license. Check the license terms before using it in commercial products.
Is open-notebook still maintained?
Actively maintained. The last commit to open-notebook was on Oct 18, 2026.
What can I use open-notebook for?
Researchers who want to keep sensitive papers and notes on their own machines. Students studying from a mix of PDFs, lectures and web articles. Teams that want to choose or switch between cloud and local AI models. Developers who need programmatic access to notebooks through the REST API.
How do I install open-notebook?
Create a folder and download docker-compose.yml: mkdir open-notebook && cd open-notebook curl -o docker-compose.yml https://raw.githubusercontent.com/lfnovo/open-notebook/main/docker-compose.yml Edit docker-compose.yml to set a long random OPEN_NOTEBOOK_ENCRYPTION_KEY Start the services with Docker Compose: docker compose up -d Open http://localhost:8502 and add an AI provider in the Models settings
Where can I get open-notebook?
The source code and installation instructions are on GitHub: https://github.com/lfnovo/open-notebook

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects