finds.dev← search

// the find

langflow-ai/openrag

★ 4,279 · Python · Apache-2.0 · updated Jul 2026

OpenRAG is a comprehensive, single package Retrieval-Augmented Generation platform built on Langflow, Docling, and Opensearch.

OpenRAG is a self-hosted document Q&A platform that wires together Langflow (workflow orchestration), Docling (document parsing), and OpenSearch (search + vectors) into a single installable package. You upload docs, it indexes them, you chat with them. The target audience is teams who want a production-grade RAG system without stitching the parts together themselves.

Docling handles document ingestion seriously — it was built by IBM Research to deal with messy real-world PDFs, tables, and scanned content, not just clean Markdown. The MCP server ships embedded on /mcp with no separate install, so connecting Cursor or Claude Desktop is a config file edit, not a new process to manage. The multi-arch Docker setup and nightly CI builds suggest this is maintained with actual production deployments in mind, not just demo-ware. Python and TypeScript SDKs exist and follow sensible async patterns.

The dependency surface is enormous — Langflow alone pulls in dozens of transitive dependencies, and stacking OpenSearch on top means you are operating three distinct systems before writing a line of application code. When retrieval quality is bad, the Langflow visual flow abstraction actively makes debugging harder than reading code would be. The 'modular enterprise add-ons' (WatsonX, IBM COS connector) are clearly the paid path, so what you get free is effectively a demo of a larger product. OpenSearch is serious infrastructure for a local dev setup — teams with fewer than a few hundred documents will find the resource overhead absurd compared to just using pgvector or SQLite-vec.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →