mViewer(Micro/Mongo Viewer) is a light web-based GUI for managing MongoDB without needing any installation. mViewer allows managing databases, collections, gridfs, users & indexes as an alternative to the mongoDB native shell in a simpler and user-friendly way.
Whats new in mViewer-1.0.0 beta?
- Redesigned complete user interface with enhananced ease.
- New login interface which supports mongodb started with/without auth mode.
- Full support of roles and privileges.
- User creation with roles with specific set actions.
- Supports latest MongoDB v3.x
- Integrated all API's with swagger
Whats new in mViewer-0.9.2 ?
- Enhanced Query Executor with support for executing queries on databases & collections including Map Reduce & aggregation queries.
- Enhanced command spotlight with better keyboard navigation even to menu items
- Support for managing Database users
- Supoort for managing Collection indexes
- Enhanced authentication & security with support for --auth mode
- Better Look-n-Feel
Working with mViewer-0.9.2 beta:
You can checkout the code or download the zip and make a release build using maven as described below. Extract the generated mViewer-0.9.2-release.zip & mViewer-0.9.2-release.tar.gz and run start_mViewer.bat/start_mViewer.sh.
Raising feature requests and issues:
You can raise feature requests and bugs found @ https://github.com/Imaginea/mViewer/issues
We are always eagerly waiting for your feature requests and bug reports
mViewer-v0.9.1 - Stable Release (as on 25-08-2012)
mViewer-v0.9.1 supports :-
- Managing Databases - Create/Drop databases
- Managing Collections - Create/Update/Drop collections
- Managing GridFS files - Add/View/Download/Drop files
- Querying for documents using Query executor
- Quick Navigation & Execution of all actions items using CTRL + Space.
- Pagination and Navigation to any subset of documents.
- Viewing stats of databases, collections and gridFS
- Opening multiple connections from same browser to different MongoDB servers
Download mViewer-1.0.0 beta
Download previous versions from https://github.com/Imaginea/mViewer/downloads
Unzip/Untar the downloaded package and simply run start_mViewer.bat/start_mViewer.sh (with +x permission).
>start_mViewer.bat <port> in Windows
$./start_mViewer.sh <port> in Mac/Linux
'port' is optional, if not provided default port (8080) set in properties file will be used.
Start using mViewer at http://localhost:<port>/index.html
Detailed documentation on mViewer features & usage can be found at http://imaginea.github.com/mViewer
Contribute to Imaginea / mViewer !
1) Fork Imaginea / mViewer 2) Clone your forked mViewer repository locally 3) We use Intellij IDEA for development. So to setup with intellij a) Create mViewer as a maven project using "Import project from external module". b) Apply Imaginea code styles/formatting settings to avoid un-wanted diffs with spaces in pull requests. - Download https://github.com/downloads/Imaginea/mViewer/settings.jar and use import settings option to apply it. - Make sure to format the code using ctr + alt + l before committing code. - When committing code, if see a popup regarding different line separators used in project, then click 'Leave unchanged'. c) Configure a Tomcat Server locally in intellij to run/debug mViewer. 4) You can send a pull request to mViewer master branch with your features/enhancements/fixes.
Making a Release build
Building a release will generate mViewer--release.zip & mViewer--release.tar.gz files in the target folder which has the mViewer.war bundled with winstone servlet container and start-up scripts from scripts folder.
It will create mViewer.war and run it using the winstone server. Once started, the application can be accessed at http://localhost:port. Default port is 8080 which can be updated in mViewer.properties file.
Working on UI
Do $mvn -Pserver to run server standalone.
Go to mviewer-ui and do npm install and npm start to run ui on web-pack dev server.
Launch at http:localhost:3000
Running Unit Tests
Use the following command to run the unit tests. surefire-reports will be generated in target folder.
$mvn install -DskipTests=false
Deploying to Other Servlet-Containers
You can generate a distributable war file using the following commands. The war can be deployed on to tomcat 7x. Other server integration will be provided on demand.
$mvn clean package
Once the war is deployed go to the url http://:/mViewer