Vi Mongo is an intuitive Terminal User Interface (TUI) application, written in Go, designed to streamline and simplify the management of MongoDB databases. Emphasizing ease of use without sacrificing functionality, Vi Mongo offers a user-friendly command-line experience for database administrators and developers alike.
Visit vi-mongo.com for more information.
To quickly install use:
curl -fsSL https://vi-mongo.com/install.sh | shTo install Vi Mongo via brew, yay or from source follow the instructions on the installation page.
If you are using Neovim you can install the plugin from nvim-plugin
- Intuitive Navigation: Vi Mongo's simple, intuitive interface makes it easy to navigate and manage your MongoDB databases.
- Fast switching between databases: Vi Mongo allows you to fast switch between databases.
- Managing Documents: Vi Mongo allows you to view, create, update, duplicate and delete documents in your databases with ease. Supports both inline editing and full document editing in your preferred external editor.
- JSON Export: Export the current page or every document matching the active query as a pretty-printed or compact JSON array while preserving MongoDB BSON types with Extended JSON.
- Managing Collections: Vi Mongo provides a simple way to manage your collections, including the ability to create, delete, and rename collections.
- Aggregation Pipelines: Built-in aggregation pipeline builder with stage management (add, edit, delete, reorder), pipeline execution, and results displayed in table or JSON view.
- Autocomplete: Vi Mongo offers an autocomplete feature that suggests collection names, database names, MongoDB commands, and aggregation pipeline operators as you type.
- Query History: Vi Mongo keeps track of your query history, allowing you to easily access and reuse previous queries.
- Mongosh Syntax Support: Vi Mongo supports standard MongoDB Shell
(mongosh) syntax, including regex literals (
/pattern/flags),ISODate(),NumberInt(),NumberLong(), andNumberDecimal()helper functions. - YAML Keybindings: Fully customizable keybindings via
keybindings.yaml, with automatic migration from older JSON format. - Multiple Styles: Vi Mongo supports multiple color schemes, they can be selected in config file or add/modify easily.
- Environment Variable URIs: Connection URLs can reference environment
variables (e.g.
$MONGODB_URI), making it safe to commit config files to version control.
All contributions are welcome!
- Create an issue
- Fork the repository
- Go with the flow
If possible please write tests for your changes.
For now all issues are resolved, but if you find any new issues, please report them in the GitHub Issues page.
