Skip to content

SamuelTallet/MongoDB-PHP-GUI

Repository files navigation

Free MongoDB GUI powered by PHP

Visually administrate your MongoDB database. Create, read, update & delete your documents.
Query your MongoDB database with a relax JSON syntax, regular expressions & SQL statements.
Autocompletion is available for collection fields, MongoDB & SQL keywords via key shortcuts.
Export documents to JSON. Import documents from JSON. Manage indexes. Manage users, etc.

Screenshots

MongoDB PHP GUI - Visualize Database

MongoDB PHP GUI - Query Documents

Installation

Docker (PHP built-in server)

  1. In a case of an upgrade, run docker pull samueltallet/mongodb-php-gui
  2. Always run docker run --add-host localhost:172.17.0.1 --publish 5000:5000 --rm samueltallet/mongodb-php-gui
  3. Open your browser at this address: http://127.0.0.1:5000/ to access GUI.

Apache HTTP server

  1. Clone current repository in a folder served by Apache.
  2. Be sure to have PHP >= 7.3 with MongoDB extension enabled.
  3. Check that rewrite_module module is enabled in your Apache configuration.
  4. Be sure to have AllowOverride All in your Apache (virtual host) configuration.
  5. Run composer install at project's root directory to install all PHP dependencies.
  6. Optionnaly, if you want to query DB with SQL, you must have Java JDK installed.
  7. Open your browser at Apache server URL to access GUI.

Usage

Query Syntax

Relaxed JSON

MongoDB PHP GUI supports a relaxed JSON syntax. In practice, this query:

city: New York

Will produce same result that:

{ "city": "New York" }

Regular Expressions

Imagine you want to find all the US cities starting with "San An". This query:

city: /^San An/

Will output:

  • San Antonio (FL)
  • San Angelo (TX)
  • ...

SQL Statements

If Java JDK is installed, you can query MongoDB with SQL statements such as:

SELECT * FROM Cities WHERE state = "CA"

Key Shortcuts

Ctrl + Space Autocomplete the query
Ctrl + * Count doc(s) matching the query
Ctrl + Enter Find doc(s) matching the query

Credits

This GUI uses Limber, Capsule, Font Awesome, Bootstrap, CodeMirror, jsonic, JsonView, MongoDB PHP library, vis.js and SQL to MongoDB Query Converter. Leaf icon was made by Freepik from Flaticon.

Funding

If you find this GUI useful, donate at least one dollar to support its development. Thank you to all! ❤️

Copyright

© 2022 Samuel Tallet