/robomongo

Shell-centric cross-platform MongoDB management tool

Primary LanguageC++GNU General Public License v3.0GPL-3.0

About Robomongo

Robomongo is a shell-centric cross-platform MongoDB management tool. Unlike most other MongoDB admin UI tools, Robomongo embeds the actual mongo shell in a tabbed interface with access to a shell command line as well as GUI interaction.

Note: Robomongo 0.8.x currently embeds the MongoDB 2.4.0 shell using the SpiderMonkey JavaScript engine. We are working on updating this to the MongoDB 3.0 shell with V8 for the 0.9.x release series.

Download

You can download tested install packages for OS X, Windows, and Linux from our site: www.robomongo.org.

The latest stable release is currently Robomongo 0.8.5.

Support

Robomongo is an open source project driven by volunteers. We'll try to get to your questions as soon as we can, but please be patient :).

You can:

Build

The wiki contains prerequisites and instructions to Build Robomongo.

If you want to compile from source yourself, you should be able to do so cleanly from a release branch.

What's Planned for the Next Release?

We are currently working toward a 0.9.0 release milestone with some major features targeted including compatibility with MongoDB 3.0 (updated shell, SCRAM-SHA-1 auth, support for WiredTiger storage engine) and full support for replica sets.

Contribute!

Vote for Features

Please view our Magic Backlog to see features prioritised by donation. The small amount of donations we currently receive are put toward hosting costs.

Suggest Features

New feature suggestions or UI improvements are always welcome.

This project is powered by open source volunteers, so we have a limited amount of development resource to address all requests. We will certainly make best efforts to progress (particularly for those with strong community upvotes).

Code Contributions

Code contributions are always welcome! Just try to follow our coding style: Robomongo Coding Style.

If you plan to contribute, please create a Github issue (or comment on the relevant existing issue) so we can help coordinate with upcoming release plans.

For a general workflow, see Github's guide to Fork a Repo.

Pull requests (PRs) should generally be for discrete issues (i.e. one issue per PR please) and be clean to merge against the current master branch. It would also be helpful if you can confirm what testing has been done (specific O/S targets and MongoDB versions if applicable).

A usual naming approach for feature branches is issue-###. Include the issue number in your commit message / pull request description to link the PR to the original issue.

For example: #248: updated QScintilla to 2.4.8 for retina display support".

Design

There are some cosmetic issues we could use help with (designing images or UI). They are marked in the issue queue with a Cosmetic label. If you see an open issue that you'd like to contribute to, please feel free to volunteer by commenting on it.

Testing

There are a number of issues we could use help with reproducing. They are marked in the issue queue with a Needs Repro label. If you see an open issue that doesn't appear to be reproducible yet, please feel free to test and comment with your findings.

License

Copyright (C) 2013-2015 Paralect, Inc

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.