A native, lightweight MongoDB client for macOS built with SwiftUI and the MongoDB C Driver.
![]() |
![]() |
![]() |
- 🚀 Native Performance: Built with SwiftUI for a smooth, high-performance experience on macOS.
- 🔌 Flexible Connections: Support for standard
mongodb://andmongodb+srv://(DNS seed list) connection strings. - 📁 Database Explorer: Easily navigate through databases and collections.
- 🔍 Query Engine: Run queries with support for filters, sorting, and projections.
- 📑 Tabbed Interface: Work with multiple collections or queries simultaneously using a familiar tabbed layout.
- 🛡️ Secure: Passwords are saved securely (via macOS Keychain integration in the future, currently profile-based management).
- 🛠️ DNS Troubleshooting: Integrated
DNSDebugServiceto help diagnose connection issues with SRV records.
- macOS 13.0 or later (Ventura+)
- Xcode 14.0+ (for building from source)
libmongocandlibbson(MongoDB C Driver)
MongoDesktop uses a modern Swift architecture:
- SwiftUI: For the entire user interface, ensuring a native look and feel.
- Actors: Using Swift's
actormodel inMongoServiceto ensure thread-safe interactions with the underlying C driver. - MongoDB C Driver: Leveraged for robust, low-level protocol communication with MongoDB servers.
- Bridging: High-performance bridging between Swift and C data structures (BSON/JSON).
- Clone the repository:
git clone git@github.com:native-macos-apps/mongodesktop.git
- Open
MongoDesktop.xcodeprojin Xcode. - Build and Run (Cmd + R).
Note: Ensure you have the MongoDB C Driver dependencies linked correctly if building for the first time.
- Add Connection: Click the "+" button to add a new MongoDB connection profile.
- Test & Save: Enter your connection URI, test the connection, and save the profile.
- Explore: Double-click a connection to open the database explorer window.
- Query: Select a collection and use the query bar to search for documents.
Contributions are welcome! Please feel free to submit a Pull Request or open an issue for bugs and feature requests.
This project is licensed under the MIT License - see the LICENSE file for details.


