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.
| _id | name | seats | joinedAt | active |
|---|---|---|---|---|
| …0912 | Ada Lovelace | 12 | 2024-03-14 | true |
| …0913 | Grace Hopper | 40 | 2024-01-22 | true |
| …0914 | Alan Turing | 3 | 2023-11-02 | false |
{
"_id": { "$oid": "66f1c0a2b7d4e8a1c3f50912" },
"name": "Ada Lovelace",
"plan": "pro",
"seats": { "$numberInt": "12" },
"credit": { "$numberDecimal": "1048.50" },
"joinedAt": { "$date": { "$numberLong": "1710408600000" } },
"active": true,
"tags": ["analyst", "founder"]
}
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
MinKeykeep their exact BSON type. Any_idworks: 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
- A production guardColour tags and a read-only flag, so you never change the wrong server.
- Copy data between serversA collection, a query result or chosen documents, with a preview.
- A shell tabRun your own
mongoshinside the app, with history. - Bulk update and deleteChange many documents at once, after a count and sample preview.
- Collection administrationCreate, rename and drop databases, collections and views.
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.
Download
curlybrace-…-macos-arm64.zipfrom the latest release and unzip it.Move Curlybrace into your Applications folder.
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"
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.
- Data Masking and ReschemaAnonymise sensitive fields in copies of data and reshape documents in bulk.Planned
- SQL and MongoDBA SQL query editor that translates to MongoDB queries.Planned
- Task SchedulerRun saved jobs on a schedule, with logs.Planned
- More platformsIntel Mac, Linux and Windows builds. One workflow row and a packaging script.Wanted
- Signing and notarizationSo the first launch doesn’t need a confirmation.Planned
- Homebrew installbrew install --cask curlybrace, once releases are signed and notarized.Planned