A personal reading stream inside Obsidian, shaped by the sources and topics you choose.
Topic Stream brings articles, papers, videos, and repositories into one place. Describe what you want to follow, read a focused Feed, and use feedback to improve future recommendations. The server runs on your own machine. The current Obsidian plugin provides an early Feed view; the backend exposes the broader reading and retrieval capabilities through its API.
In the current plugin you can create Topics, request Sync all, browse already-published Feed history, open original links, and give Like/Dislike feedback with optional comments. Its Source form still sends the old request shape; create Sources through the backend API using the guide. Its Refresh button rereads saved history. To publish recommendations, use the backend Feed Refresh API.
The backend also supports arXiv, GitHub Trending and YouTube Sources, Topic corrections, archive Search, cleaned content and image delivery, explicit Item AI summaries, and scheduled Digests. Search, Reader, Digest, Task Center and AI-summary controls are not yet available in the plugin. The plugin does not yet write Vault Snapshots. See the current Obsidian capabilities.
You need Docker with Compose v2, mise, Obsidian, and a running local OpenAI-compatible embedding service. Building the plugin also requires Node.js and pnpm. The server stack includes PostgreSQL and Qdrant; AI models are managed separately.
-
Clone this repository and copy
.env.exampleto.env. -
Set a stable UUIDv4 Workspace ID and the embedding endpoint, model, and dimensions. For a provider on your Docker host, use
http://host.docker.internal:11434/v1rather thanlocalhost. -
Start the server stack:
mise run up
The generated
.envdefaults to the publiclatestbackend image. To run the current checkout instead, build and select the local image explicitly:mise run image-build TOPIC_STREAM_BACKEND_IMAGE=topic-stream:local mise run up
-
Build and install the Obsidian plugin, connect to
http://127.0.0.1:7331, and follow the first Feed steps, including API publication.
The getting started guide walks through configuration, model setup, and your first Feed. The default deployment exposes the API only on localhost; it has no built-in authentication.
- Use Topic Stream — the current plugin workflow and backend API references.
- Run and configure the server — settings, model setup, and runtime roles.
- Troubleshoot a problem or back up your data.
- Develop Topic Stream — local databases, builds, tests, and code conventions.
- Browse the documentation — product behavior, architecture, API, and decisions.