Curlybrace is a free MongoDB GUI for Mac.

Browse, query, edit and compare your MongoDB collections in a native Mac app. No account, no trial, no paid tier, and the source is open.

Early release for Apple Silicon Macs. Licensed MIT or Apache-2.0.

Curlybrace
_idObjectId66f1c0a2b7d4e8a1c3f50912
nameStringAda Lovelace
planStringpro
seatsInt3212
creditDecimal1281048.50
joinedAtDate2024-03-14 09:30 UTC
activeBooleantrue
tagsArray2 items
0Stringanalyst
1Stringfounder
An illustration of the app’s layout, not a screenshot. The same documents, shown three ways. Editing uses the JSON form above, so an Int32 stays an Int32 and a Decimal128 stays a Decimal128. Real screenshots are on the way.

What you can do with it

The basics, done carefully, plus a compare tool for moving data between databases safely. Everything here works today.

Connect the way your servers need
SCRAM, X.509 and LDAP sign-in, TLS, replica sets and mongodb+srv:// URIs. Reach private servers through an SSH tunnel via a bastion host, with the host key checked before anything is sent. Kerberos is included and still experimental.
Keep passwords out of files
Passwords and SSH secrets are stored in the macOS Keychain. The saved connection list never contains them, and they never appear in logs or error messages.
See documents three ways
Open a collection and switch between a tree, a table and raw JSON. Pages hold 50 documents, and long arrays are summarised so big documents stay readable.
Query without leaving the page
Type a filter, sort, projection, skip and limit as JSON and run it. If something is wrong, the app says what, and your previous results stay on screen.
Edit without losing types
Insert, edit, clone and delete documents. The editor uses canonical extended JSON, so numbers, decimals, dates, binary data and MinKey keep their exact BSON type. Any _id works: ObjectId, string, number, UUID or a compound value.
Compare collections or whole databases
Pick a source and a target, even on different servers, and compare two collections or a whole database. See what is only on one side and what differs, field by field. Comparing never writes. To change data you tick the differences, review exactly what will be written where, and confirm; every document is checked again just before it is written. You can also export the changes as a mongosh script or JSON plan, or the differences as a CSV report. Read the compare guide.
Several connections at once
Open more than one saved connection at the same time. Each has its own tree root, status and view, and the documents pane, the delete confirmation and the editor name the connection a write goes to. If a server goes away, only its root turns red, with a Reconnect button, and the others keep working. A TLS problem is reported as such, apart from an unreachable server. Details in #46.
A connection manager
Saved connections in folders, with filter and sort, an edit dialog, a connection test, and import and export of your connection list without secrets. Details in #45.
Built to not lose your data
Deletes ask for confirmation and show the document’s _id. A page shown with a projection is read-only for edit and clone, so a partial copy can never overwrite the full document. Unsaved editor text survives a stray click.

What is coming next

Curlybrace focuses first on what free MongoDB tools do not already cover well, then fills in the everyday features. Every item is a GitHub issue you can follow, discuss or build.

In progress

  • Nothing is being built right now. Pick something from Next.

Next

Later

See the full roadmap

Free, and staying free

There is no account to create, no trial that ends and no feature held back for a paid plan. You can read every line of code, build it yourself and change it.

It is an independent project. It is not affiliated with or endorsed by MongoDB, Inc.

  • PriceFree
  • LicenseMIT or Apache-2.0, your choice
  • Account or sign-inNone
  • TelemetryNone
  • Source codeGitHub

Install it in a minute

For Apple Silicon Macs. The app isn’t notarized by Apple yet, so macOS asks you to confirm the first launch.

  1. Download curlybrace-…-macos-arm64.zip from the latest release and unzip it.

  2. Move Curlybrace into your Applications folder.

  3. Right-click the app, choose Open, then Open again. Or clear the quarantine flag once from a terminal:

    xattr -dr com.apple.quarantine "/Applications/Curlybrace.app"
Go to the latest release

Come build it with us

The app is small and young, and that makes it a good place to leave a mark. The next features are open for anyone to take.

You do not need to be a Rust expert. Fixing a bug, writing a test or improving a doc is a real contribution. If you want to build a whole feature or bring the app to another platform, the contributing guide shows how the code is organised and how releases work.