
In simple English
MongoDB changed its licence and became hard to use for open source projects. This tool acts as a bridge for your existing code. It speaks the MongoDB language on one side and talks to PostgreSQL on the other. Your app thinks it is talking to MongoDB, but your data lives in PostgreSQL. It is free to use under the Apache 2.0 licence, though you need to run and manage the underlying database yourself.
What it is
FerretDB is an open source proxy written in Go (a programming language built by Google for fast and reliable network servers). It converts MongoDB 5.0+ wire protocol queries to SQL and relies on PostgreSQL with a document extension as its storage engine.
What it is good for
Solo builders who want the ease of MongoDB queries without paying for proprietary software or accepting restrictive commercial licences.
- Works with existing MongoDB drivers and tools without code changes.
- Released under the open source Apache 2.0 licence.
- Backed by PostgreSQL, a proven and reliable database.
- Not all advanced MongoDB features and commands are supported yet.
- Requires running PostgreSQL alongside the proxy in production.
- Evaluation Docker container loses all data when stopped.
MongoDB
PostgreSQL
- meilisearch/meilisearch59k stars
A search engine you run yourself, built for fast answers and forgiving spelling.
- beekeeper-studio/beekeeper-studio24k stars
A desktop window onto a database, so you can read and edit rows without writing commands.
- sqliteai/sqlite-vector1.1k stars
An add-on that gives the single-file SQLite database meaning-based search, with its own accuracy figures printed in the README.
docker run -d --rm --name ferretdb -p 27017:27017 \ -e POSTGRES_USER=myuser \ -e POSTGRES_PASSWORD=mypassword \ ghcr.io/ferretdb/ferretdb-eval:2