A modern, developer-friendly MongoDB GUI built with React, Tailwind CSS, and Node.js.
- Query Editor: Monaco-based editor with rich autocomplete for MongoDB operators and field names.
- Results Viewer: JSON and Table views for query results.
- Query History: Persisted history of your executed queries.
- Dark/Light Mode: sleek themes for any time of day.
- Local Backend: Secure connection handling via a local Express server.
- Node.js (v18 or higher)
- MongoDB (running locally or a connection string)
-
Install Frontend Dependencies:
npm install
-
Install Backend Dependencies:
cd server && npm install && cd ..
The application requires a .env file in the server directory to manage authentication and database connections.
-
Create a file named
.envin theserverdirectory. -
Add the following variables:
PORT=3001 # Authentication AUTH_PASSWORD=your_secure_password JWT_SECRET=your_jwt_secret_key # Database Connections (Format: DB_URI_<ENV_NAME>) DB_URI_LOCAL=mongodb://localhost:27017 DB_URI_DEV=mongodb://dev-server:27017/dev_db DB_URI_PROD=mongodb://prod-server:27017/prod_db
- AUTH_PASSWORD: The password required to log in to the application.
- JWT_SECRET: A secret key used to sign JSON Web Tokens.
- DB_URI_*: Connection strings for different environments. The app will automatically detect variables starting with
DB_URI_and display them in the environment dropdown.
The easiest way to run the project is to start both the frontend and backend with a single command:
npm run dev:allThis will start:
- Frontend: http://localhost:8080
- Backend: http://localhost:3001
If you prefer running them separately:
-
Backend:
npm run dev:server
-
Frontend:
npm run dev
-
Open the frontend in your browser.
-
Click Connect in the top right (or the dialog on start).
-
Enter your MongoDB connection string (default:
mongodb://localhost:27017). -
Select a database and collection from the sidebar.
-
Start querying!
db.users.find({})