DEV.co
Open-Source Databases · kristijanhusak

vim-dadbod-ui

vim-dadbod-ui is a Vim/Neovim plugin that provides a graphical interface for database operations built on top of vim-dadbod. It allows developers to navigate databases, execute queries, and manage connections directly from their editor with a sidebar drawer UI.

Source: GitHub — github.com/kristijanhusak/vim-dadbod-ui
2k
GitHub stars
135
Forks
Vim Script
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositorykristijanhusak/vim-dadbod-ui
Ownerkristijanhusak
Primary languageVim Script
LicenseMIT — OSI-approved
Stars2k
Forks135
Open issues99
Latest releaseUnknown
Last updated2026-06-19
Sourcehttps://github.com/kristijanhusak/vim-dadbod-ui

What vim-dadbod-ui is

A Vim Script plugin that extends vim-dadbod functionality with UI navigation, async query execution, table schema browsing, and saved query management. Supports multiple database engines (PostgreSQL, MySQL, SQLite) and integrates with completion plugins via configurable connection profiles.

Quickstart

Get the vim-dadbod-ui source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/kristijanhusak/vim-dadbod-ui.gitcd vim-dadbod-ui# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

SQL Development in Vim/Neovim

Engineers who work primarily in Vim/Neovim can perform ad-hoc SQL queries, explore schemas, and manage database connections without leaving their editor, reducing context switching overhead.

Database Schema Exploration

Quick navigation through multiple databases, tables, and schemas with built-in helpers for common queries (indexes, foreign keys, primary keys), useful for development and debugging workflows.

Query Persistence and Reuse

Developers can save frequently-used queries to a local directory for later retrieval, supporting faster iteration on common database tasks across projects.

Implementation considerations

  • Requires vim-dadbod plugin as mandatory dependency; ensure compatibility with your Vim version (8.1+) or Neovim variant before deployment.
  • Database connection credentials must be managed securely (environment variables, .env files, or local Vim config) to avoid accidental credential exposure in version control.
  • Query results and saved queries are stored locally in ~/.local/share/db_ui by default; validate file permissions and backup strategy align with team data policies.
  • Async query execution requires Vim/Neovim job support; confirm your build includes async capabilities, especially on older or minimal Vim installations.
  • Optional vim-dadbod-completion plugin improves UX; evaluate integration effort if SQL autocompletion is critical for team productivity.

When to avoid it — and what to weigh

  • Non-Vim Editor Preference — If your team uses VSCode, JetBrains IDEs, or other non-Vim editors as primary tools, this plugin provides no value and would fragment tooling.
  • Complex Multi-Step Transactions — The plugin is optimized for query execution and exploration, not for managing complex multi-step database operations, migrations, or transaction workflows that benefit from dedicated database tools.
  • Advanced BI/Analytics Workflows — Teams doing heavy analytics, data warehousing, or BI work should use specialized tools (Tableau, Looker, DBeaver) rather than expecting a lightweight Vim UI to handle complex reporting needs.
  • Minimal or No SQL in Development Stack — If your development relies primarily on ORMs, managed databases, or non-relational data stores with infrequent direct SQL access, this plugin adds unnecessary overhead.

License & commercial use

Licensed under MIT License, a permissive open-source license allowing unrestricted use, modification, and redistribution with no warranty and minimal attribution requirements.

MIT License permits commercial use without explicit restrictions. However, the plugin is a UI wrapper around vim-dadbod (also MIT); verify all dependencies are similarly permissive. No commercial support, warranties, or indemnification are provided; treat as unsupported open-source software.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityLow
DEV.co fitGood
Assessment confidenceHigh
Security considerations

Database credentials are configured in Vim settings or environment variables; ensure proper isolation (e.g., project-local exrc, .env files) to prevent accidental commits. The plugin passes credentials to vim-dadbod for connection handling; review vim-dadbod's credential handling. No built-in encryption or secrets manager integration; teams must rely on OS-level credential storage or external tools. Query results are stored in plaintext in ~/.local/share/db_ui; restrict file permissions accordingly.

Alternatives to consider

DBeaver Community

Standalone, cross-platform GUI with superior schema exploration, visual query builders, and advanced features; better for teams or non-Vim-exclusive workflows, but requires context switch from editor.

DataGrip (JetBrains)

Purpose-built IDE for database work with deep integration for JetBrains IDEs; superior refactoring, version control, and collaboration features; requires paid license and IDE integration.

vim-dadbod alone + external SQL client

Lighter footprint; use vim-dadbod for programmatic query execution and DBeaver/psql/mysql CLI for interactive exploration; avoids UI plugin complexity but requires tool switching.

Software development agency

Build on vim-dadbod-ui with DEV.co software developers

Assess whether this plugin aligns with your Vim-centric development workflow and database interaction needs. Review credential management requirements, team tooling consistency, and security policies before adoption.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

vim-dadbod-ui FAQ

Does this plugin work with my database (PostgreSQL, MySQL, SQLite)?
Yes, vim-dadbod-ui supports PostgreSQL, MySQL, and SQLite by default via vim-dadbod's underlying driver support. Other databases may work if vim-dadbod supports them; consult vim-dadbod documentation for the full list.
How do I securely manage database credentials?
Use environment variables (DBUI_URL, DBUI_NAME), project-local Vim config (`:set exrc`), or dotenv.vim with a .env file excluded from version control. Avoid hardcoding credentials in global vimrc or committed config files.
Can I share saved queries with my team?
Saved queries are stored as local files in g:db_ui_save_location (~/.local/share/db_ui by default). To share, configure this location to a version-controlled directory (e.g., git-tracked project folder) or use a shared network path; this requires explicit team setup.
What happens if I lose connection to the database while executing a query?
Unknown; behavior depends on vim-dadbod's connection handling and underlying database driver. Review vim-dadbod documentation or test in your environment to confirm timeout and retry behavior.

Work with a software development agency

Need help beyond evaluating vim-dadbod-ui? DEV.co is a software development agency offering software development services and web development for teams of every size. Our software developers and web developers build custom software, web applications, APIs, and open-source databases integrations — and maintain them long-term.

Evaluate vim-dadbod-ui for Your Team

Assess whether this plugin aligns with your Vim-centric development workflow and database interaction needs. Review credential management requirements, team tooling consistency, and security policies before adoption.