A local, private markdown editor with WYSIWYG editing and side-by-side AI editing through Claude, Codex and other agents via MCP and CLI.
deta/surf
Deta Surf is an open-source desktop AI notebook that combines local files, web pages and videos with LLM-generated notes.
Open-source alternative to:Notion AI
NotebookLM
- Stars
- 3,603
- Forks
- 254
- Open issues
- 33
- Last commit
- 2 months ago
What is it?
Deta Surf is a desktop AI notebook for research and thinking across files and the web. Instead of switching between note apps, PDF readers and browser tabs, you can keep PDFs, websites, YouTube videos and local files in one library and ask questions about them directly in your notes.
The library is stored locally on your computer in open formats, using a storage engine called SFFS (Surf Flat File System). Notes support @-mentions of any resource in the library, web searches whose results can be pulled into a note, and citations that link back to the exact section, timestamp or PDF page of the source. Surf also includes Surflets, which generate small interactive applications from a prompt.
Surf runs on macOS, Windows and Linux, and the app is built with Svelte, TypeScript and Rust on top of Electron. You can bring your own API key for popular cloud models or use local language models.
Key features
- 01Stores local files, web pages and videos in a private library organized into Notebooks.
- 02Lets you @-mention library resources and auto-generate notes from them.
- 03Adds web search results to notes and links citations back to original sources.
- 04Generates interactive applets (Surflets) from prompts without writing code.
- 05Supports bring-your-own-key cloud models as well as local language models.
- 06Keeps data in open, local formats and works offline for much of the library.
Use cases
- Studying a lecture video or PDF and asking questions with cited answers.
- Researching a topic across saved webpages, documents and fresh web searches.
- Building interactive visualizations to understand a concept or dataset.
- Keeping private research notes with local models for sensitive material.
Quick start
- 1
Open the installation guide for download and install instructions
- 2
For building from source and local development, see CONTRIBUTING.md
Things to know
- AI notes and Surflets need a large language model, either your own API key for a popular model or a local model.
Topics
FAQ
- What is surf?
- Deta Surf is an open-source desktop AI notebook that combines local files, web pages and videos with LLM-generated notes. Deta Surf is a desktop AI notebook for research and thinking across files and the web. Instead of switching between note apps, PDF readers and browser tabs, you can keep PDFs, websites, YouTube videos and local files in one library and ask questions about them directly in your notes.
- Is surf free to use? What license does it have?
- surf is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is surf still maintained?
- Updated within 6 months. The last commit to surf was on Aug 24, 2026.
- What can I use surf for?
- Studying a lecture video or PDF and asking questions with cited answers. Researching a topic across saved webpages, documents and fresh web searches. Building interactive visualizations to understand a concept or dataset. Keeping private research notes with local models for sensitive material.
- How do I install surf?
- Open the installation guide for download and install instructions For building from source and local development, see CONTRIBUTING.md
- Where can I get surf?
- The source code and installation instructions are on GitHub: https://github.com/deta/surf
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Local and cloud runner for open models such as Gemma, Qwen, DeepSeek and gpt-oss, with a CLI, REST API and Python/JavaScript libraries.
A self-hosted AI gateway that exposes OpenAI, Claude and Gemini compatible APIs in front of many upstream model providers, with routing, keys, quotas and cost tracking.
A Zotero plugin for chatting with single or multiple PDFs and searching the whole library, using cloud LLMs or local models.
Unreal Engine plugin that connects games and editor tooling to LLM, image, TTS and 3D generation APIs, plus an MCP server for AI assistants.
Local-first AI e-book reader for desktop and mobile with RAG chat, semantic search, highlights, TTS and WebDAV sync.