frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: Omni – Open-source workplace search and chat, built on Postgres

https://github.com/getomnico/omni
44•prvnsmpth•2h ago
Hey HN!

Over the past few months, I've been working on building Omni - a workplace search and chat platform that connects to apps like Google Drive/Gmail, Slack, Confluence, etc. Essentially an open-source alternative to Glean, fully self-hosted.

I noticed that some orgs find Glean to be expensive and not very extensible. I wanted to build something that small to mid-size teams could run themselves, so I decided to build it all on Postgres (ParadeDB to be precise) and pgvector. No Elasticsearch, or dedicated vector databases. I figured Postgres is more than capable of handling the level of scale required.

To bring up Omni on your own infra, all it takes is a single `docker compose up`, and some basic configuration to connect your apps and LLMs.

What it does:

- Syncs data from all connected apps and builds a BM25 index (ParadeDB) and HNSW vector index (pgvector) - Hybrid search combines results from both - Chat UI where the LLM has tools to search the index - not just basic RAG - Traditional search UI - Users bring their own LLM provider (OpenAI/Anthropic/Gemini) - Connectors for Google Workspace, Slack, Confluence, Jira, HubSpot, and more - Connector SDK to build your own custom connectors

Omni is in beta right now, and I'd love your feedback, especially on the following:

- Has anyone tried self-hosting workplace search and/or AI tools, and what was your experience like? - Any concerns with the Postgres-only approach at larger scales?

Happy to answer any questions!

The code: https://github.com/getomnico/omni (Apache 2.0 licensed)

Comments

Doublon•1h ago
Interesting!

I also started to build something similar for us, as an PoC/alternative to Glean. I'm curious how you handle data isolation, where each user has access to just the messages in their own Slack channels, or Jira tickets from only workspaces they have access to? Managing user mapping was also super painful in AWS Q for Business.

prvnsmpth•1h ago
Thank you!

Currently permissions are handled in the app layer - it's simply a WHERE clause filter that restricts access to only those records that the user has read permissions for in the source. But I plan to upgrade this to use RLS in Postgres eventually.

For Slack specifically, right now the connector only indexes public channels. For private channels, I'm still working on full permission inheritance - capturing all channel members, and giving them read permissions to messages indexed from that channel. It's a bit challenging because channel members can change over time, and you'll have to keep permissions updated in real-time.

swaminarayan•1h ago
How well does the Postgres-only approach hold up as data grows — did you benchmark it against Elasticsearch or a dedicated vector DB?
prvnsmpth•1h ago
I've done small scale experiments with up to 100-500k rows, and did not notice any significant degradation in search query latency - p95 still well under 1s.

I haven't directly compared against Elasticsearch yet, but I plan to do that next and publish some numbers. There's a benchmark harness setup already: https://github.com/getomnico/omni/tree/master/benchmarks, but there's a couple issues with it right now that I need to address first before I do a large scale run (the ParadeDB index settings need some tuning).

cultofmetatron•8m ago
we have a pretty intensively used postgres backed app handling thousands of users concurrently. After 6 years and thousands of paying custoners, we are only now approaching to the limits of what it can support on the horizon. TLDR: when you get there, you can hire some people to help you break things off as needed. if you're still trying to prove your business model and carve yoruself a segment of the market, just use postgres
vladdoster•1h ago
Multiple pages link to a `API Reference` that returns a 404
prvnsmpth•1h ago
Oops, sorry! That page is still a WIP, haven't pushed it yet. The plan was to expose the main search and chat APIs so that users can build integrations with third-party messaging apps (e.g. Slack), but haven't gotten around to properly documenting all the APIs yet.
keyle•1h ago
I've done some RAG using postgres and the vector db extension, look into it if you're doing that type of search; it's certainly simpler than bolting another solution for it.
prvnsmpth•1h ago
Yeah, Omni uses Postgres and pgvector for search. ParadeDB is essentially just Postgres with the pgsearch extension that brings in Tantivy, a full-text search engine (like Apache Lucene).

Motorola announces a partnership with GrapheneOS Foundation

https://motorolanews.com/motorola-three-new-b2b-solutions-at-mwc-2026/
691•km•4h ago•246 comments

/e/OS is a complete "deGoogled", mobile ecosystem

https://e.foundation/e-os/
141•doener•2h ago•89 comments

Making Video Games in 2025 (without an engine)

https://www.noelberry.ca/posts/making_games_in_2025/
167•alvivar•3d ago•67 comments

Show HN: Omni – Open-source workplace search and chat, built on Postgres

https://github.com/getomnico/omni
45•prvnsmpth•2h ago•10 comments

How to talk to anyone and why you should

https://www.theguardian.com/lifeandstyle/2026/feb/24/stranger-secret-how-to-talk-to-anyone-why-yo...
92•Looky1173•3h ago•300 comments

U.S. science agency moves to restrict foreign scientists from its labs

https://www.science.org/content/article/nist-moves-restrict-foreign-scientists-its-labs
18•JeanKage•2h ago•1 comments

Jolla phone – a full-stack European alternative

https://commerce.jolla.com/products/jolla-phone-sept-26
61•spinningslate•1h ago•32 comments

If AI writes code, should the session be part of the commit?

https://github.com/mandel-macaque/memento
282•mandel_x•11h ago•258 comments

Neocaml – Rubocop Creator's New OCaml Mode for Emacs

https://github.com/bbatsov/neocaml
26•TheWiggles•2d ago•1 comments

Mondrian Entered the Public Domain. The Estate Disagrees

https://copyrightlately.com/mondrian-public-domain-controversy/
42•Tomte•2d ago•2 comments

Computer-generated dream world: Virtual reality for a 286 processor

https://deadlime.hu/en/2026/02/22/computer-generated-dream-world/
111•MBCook•7h ago•15 comments

WebMCP is available for early preview

https://developer.chrome.com/blog/webmcp-epp
303•andsoitis•13h ago•171 comments

How to record and retrieve anything you've ever had to look up twice

https://ellanew.com/2026/03/02/ptpl-197-record-retrieve-from-a-personal-knowledgebase
71•Curiositry•7h ago•27 comments

Right-sizes LLM models to your system's RAM, CPU, and GPU

https://github.com/AlexsJones/llmfit
161•bilsbie•12h ago•34 comments

An interactive intro to Elliptic Curve Cryptography

https://growingswe.com/blog/elliptic-curve-cryptography
44•vismit2000•5h ago•9 comments

Show HN: Timber – Ollama for classical ML models, 336x faster than Python

https://github.com/kossisoroyce/timber
136•kossisoroyce•10h ago•27 comments

Process-Based Concurrency: Why Beam and OTP Keep Being Right

https://variantsystems.io/blog/beam-otp-process-concurrency
44•linkdd•6h ago•27 comments

Ghostty – Terminal Emulator

https://ghostty.org/docs
756•oli5679•23h ago•321 comments

Everett shuts down Flock camera network after judge rules footage public record

https://www.wltx.com/article/news/nation-world/281-53d8693e-77a4-42ad-86e4-3426a30d25ae
271•aranaur•7h ago•73 comments

Evolving descriptive text of mental content from human brain activity

https://www.bbc.com/future/article/20260226-how-ai-can-read-your-thoughts
24•ggm•5h ago•19 comments

Tove Jansson's criticized illustrations of The Hobbit (2023)

https://tovejansson.com/hobbit-tolkien/
180•abelanger•2d ago•87 comments

Enable CORS for Your Blog

https://www.blogsareback.com/guides/enable-cors
46•cdrnsf•2d ago•22 comments

Microsoft bans the word "Microslop" on its Discord, then locks the server

https://www.windowslatest.com/2026/03/02/microsoft-gets-tired-of-microslop-bans-the-word-on-its-d...
17•robtherobber•1h ago•4 comments

Why does C have the best file API

https://maurycyz.com/misc/c_files/
122•maurycyz•16h ago•99 comments

Decision trees – the unreasonable power of nested decision rules

https://mlu-explain.github.io/decision-tree/
494•mschnell•1d ago•77 comments

Little Free Library

https://littlefreelibrary.org/
126•TigerUniversity•13h ago•65 comments

When does MCP make sense vs CLI?

https://ejholmes.github.io/2026/02/28/mcp-is-dead-long-live-the-cli.html
389•ejholmes•18h ago•250 comments

Microgpt explained interactively

https://growingswe.com/blog/microgpt
278•growingswe•1d ago•41 comments

Next-gen spacecraft are overwhelming communication networks

https://atempleton.bearblog.dev/how-next-gen-spacecraft-are-overwhelming-our-communication-networks/
73•korrz•2d ago•25 comments

Long Range E-Bike (2021)

https://jacquesmattheij.com/long-range-ebike/
175•birdculture•3d ago•270 comments