Fathom your data.
A desktop browser for MongoDB and Amazon DocumentDB — full CRUD, real query power, one window.
Browse every collection and read each BSON type as it really is, run mongo-shell queries with Explain and export-to-language, and reach a DocumentDB cluster straight through your SSH bastion — the parts other clients leave hard.
Free · No account · Local-first
Every document, as it really is.
A document isn't a blob of text. FathomDB reads it as BSON and shows you the types —
an ObjectId is an ObjectId, a Decimal128 keeps its precision,
a date is a date — so what you see on screen is what the database actually holds.
Type-aware, three ways to look
List, raw JSON, or a flattened table — the same documents, however you need to read them.
- Real BSON types — ObjectId, Decimal128, Date, Binary, arrays, nested docs, each labelled
- List · JSON · Table views, expandable arrays and subdocuments
- Insert, edit, duplicate, delete — Extended JSON in, Extended JSON out
Open a document in full
Click any row to read the whole document, then edit it in place — nothing truncated, nothing guessed.
- Full Extended JSON with nested arrays and objects expanded
- Edit and save a single document without leaving the view
- Copy it out as canonical EJSON, ready to paste anywhere
Amazon DocumentDB, without the fight.
A DocumentDB cluster lives in a private VPC, speaks TLS with Amazon's CA, and rejects
retryWrites. FathomDB handles all of it as a connection mode — and tunnels
in through the same bastion you already SSH to, resolving the alias straight from your
~/.ssh/config.
# Paste the cluster URI — FathomDB sets the rest. mongodb://admin@docdb-prod.cluster-xxxx.us-west-2.docdb.amazonaws.com:27017 tls on · Amazon RDS CA bundle, embedded retryWrites off · DocumentDB doesn't allow it ssh bastion gbanker · resolved from ~/.ssh/config * tunnelling 127.0.0.1:27017 → cluster:27017 * connected · DocumentDB 5.0 · 4 databases
-
TLS & the CA, already bundled
The Amazon RDS combined CA ships inside the app, so a DocumentDB connection is
tls: trueand nothing else — no downloading a.pem, no wiring a path. -
Through your bastion, by alias
Type a host alias and FathomDB reads your SSH config for the user, key and jump — opens a local forward and points the driver at it. Leave the other fields blank.
-
The same app, either engine
Browse, query, aggregate and index a DocumentDB cluster with the exact UI you use for MongoDB.
retryWritesand the replica-set quirks are handled for you.
Query in the shell you already speak.
Filters are mongo-shell syntax, not a form — unquoted keys, ObjectId(),
regexes, the lot. Then see the plan the server actually ran, and lift the whole query
out as code in the language you need.
{ status: "shipped" } ran as an index scan on status_1 —
documents returned and examined, keys examined and execution time, with the full
queryPlanner underneath. The difference between a fast query and a slow one,
in plain sight.
-
mongo-shell filters
Type
{ status: "shipped" }or a full find with projection, sort, collation,maxTimeMSand hint. Save the ones you reuse; the last runs stay in history. -
Explain, without ceremony
One click turns any filter into its execution plan — which index answered it, how many documents it had to look at, how long it took.
-
Export to nine languages
Turn the query into mongosh, Node, Python, Java, C#, Go, Ruby, PHP or Rust — ready to paste into the code that will run it for real.
Aggregations, indexes, schema, validation.
A collection is more than its documents. Build a pipeline and see the output, list and reason about the indexes, learn the shape of the data, and read the validation rules — each a tab away, not a second tool.
Aggregation pipelines
Write a pipeline on the left, read the results on the right — stages formatted, output live.
- $group, $match, $sort and the rest, with the output beside the stages
- Revenue per status in a few lines — real numbers, not a mock
Indexes & validation
Every index laid out, and the collection's JSON-schema rules where you can actually read them.
- Index list — keys, direction, unique flags, at a glance
- $jsonSchema validators — required fields, types, enums, level and action
- Schema view — inferred field types with their distribution
-
Indexes, listed
Every index on the collection —
_id_, compound keys, unique constraints — with the keys and their direction. -
Schema, inferred
Sample the collection and see each field's types and how often they appear — the real shape, mixed types and nulls included.
-
Validation, editable
Read the
$jsonSchemathe collection enforces, and change the rules withcollMod— gated behind write mode.
Read-only until you mean it.
A production browser you can't accidentally write to. FathomDB opens read-only — browse, query, aggregate and explain anything — and every write is refused until you flip the switch in the title bar. It's enforced in the main process, not just hidden in the UI.
-
Off by default
Launch, connect, explore — nothing you do can change a document until you choose to. The safe state is the one you start in.
-
Enforced where it counts
The toggle gates writes in the process that holds the driver, so a disabled button is backed by a real refusal — not a hope that you didn't find another way.
-
Local-first, no account
Your connections live in a file on your disk. No sign-in, no sync, no cloud in the path between you and your database.
Take a sounding of the deep end.
MongoDB and Amazon DocumentDB, browsed properly. Free, no account, on every desktop.
macOS, Windows & Linux on the download page. Opens read-only — flip one switch to write.