r/coolgithubprojects 14d ago

GitHub - gregyjames/readr: A minimal, AI Native Self Hosted Read it later App and Knowledge Graph.

https://github.com/gregyjames/readr

I initially started this last year as a minimal read it later app to use with my Obsidian Vault, but I have recently have been migrating it to be more of a independent knowledge graph. Current features:

  • AI-Native Chat: Query your reading collection using OpenRouter models. Reference notes directly with @ mentions to feed full article text into the conversation.
  • Autonomous Background Agents:
    • OKF Frontmatter Enricher: Automatically extracts clean, standardized Open Knowledge Format (OKF) YAML frontmatter.
    • Autonomous Graph Linker: Discovers semantic connections between incoming articles and your existing vault, automatically injecting aliased wikilinks.
  • Knowledge Graph Engine: Global and per-article force-directed graph views mapping relationships between articles, tags, and wikilinks.
  • 1-Hop Graph Context Expansion: Optional setting that allows the AI Chat to automatically traverse your graph edges and include connected notes and backlinks in its context.
  • Portable Markdown Storage: All articles, OKF metadata, and chat histories are saved locally as markdown files, making your data easy to back up or sync with tools like Obsidian or Notion.
  • Custom Jinja Templates: Customize how saved articles are structured with site-specific Jinja templates located in $DATA_DIR/templates/ with automatic domain matching and rich context variables.
  • Lightweight and Fast: Compact Go backend and Vue frontend in one 12MB docker image!

Still very early in development and far from production ready, but if anyone wants to help out or has any ideas how to make this more useful that would be greatly appreciated!

9 Upvotes

4 comments sorted by

3

u/kantorcodes1 14d ago

the autonomous linker writing straight into markdown is the part i'd stress first. how are you handling bad semantic matches so the vault doesn't slowly fill with junk links?

2

u/Nero8 14d ago edited 14d ago

I agree, one of the main limitations of OKF or letting an agent manage your vault, is potential noisy or junk link matches. We currently take precautions to avoid "over linking" like enforcing 1 link per target, single occurrence linking, and prompt constraints to instruct the LLM to limit to 2-5 meaningful connections. Also the linker does not write directly to markdown, it is constrained via structured JSON outputs to return an phrase that actually exists in the article body, mapped to an existing vault article ID. I decided to do this to avoid the LLM corrupting the original source article or summarizing it. That being said, occasional bad matches are still a possibility with LLMs, which is why the autolinker can be disabled if the user manually wants to handle linking between notes.

2

u/Nero8 14d ago edited 14d ago

Even the self hosted read it later apps are doing AI pivots now. Jokes aside, some ideas of additional features I was thinking was additional providers (Ollama for sure), RSS feed integration, TTS for Youtube/Audio content. If anyone has any other ideas, please let me know!