For a TUI for browsing my database, the first results are maxteabag/sqlit (Sqlit is a terminal-based SQL client and database explorer with a TUI, support for many databases PostgreSQL, MySQL, SQLite, etc., query execution, and export features, making it exactly the interactive query tool you're looking for), dbcli/mycli (Mycli is a TUI MySQL client with autocomplete, syntax highlighting, and SQL execution, making it a good fit for exploring tables and writing queries, though it only supports MySQL rather than multiple databases) and dbcli/pgcli (pgcli is an interactive SQL shell and query editor for PostgreSQL with schema-aware autocompletion and table browsing, which directly matches the request for a terminal-based database exploration tool, though it is single-database rather than multi-database). dbcli/litecli and migueldeicaza/gui.cs round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Command-line tools for browsing database tables, executing SQL queries, and managing data directly within your terminal.
Sqlit is a terminal-based SQL client and database explorer designed for executing queries and managing database connections. It functions as a command line interface that provides syntax highlighting, command history, and a terminal user interface for rendering results. The tool features a discovery engine that scans local Docker sockets to automatically identify and resolve connection details for active database containers. It handles secure access through encrypted SSH tunnels and integrates with external secrets managers to retrieve credentials. The project includes capabilities for data
Sqlit is a terminal-based SQL client and database explorer with a TUI, support for many databases (PostgreSQL, MySQL, SQLite, etc.), query execution, and export features, making it exactly the interactive query tool you're looking for.
mycli is a MySQL command line client, database administration tool, and SQL query editor. It functions as a terminal interface for executing queries and managing MySQL connections, incorporating an integrated assistant that uses large language models to generate and analyze SQL statements based on the current database schema. The tool provides specialized query authoring capabilities, including context-sensitive syntax suggestions, fuzzy-matching identifier completion for tables and columns, and the ability to handover query buffers to external system text editors. It distinguishes its connec
Mycli is a TUI MySQL client with autocomplete, syntax highlighting, and SQL execution, making it a good fit for exploring tables and writing queries, though it only supports MySQL rather than multiple databases.
pgcli is an interactive command-line interface and database management tool for PostgreSQL. It functions as an interactive SQL shell and query editor that allows users to inspect schemas, manage connections, and run queries against PostgreSQL data sources. The tool is distinguished by its real-time, schema-aware autocompletion for keywords, tables, and columns, as well as dynamic SQL syntax highlighting. It provides safety mechanisms through transaction-aware guardrails that warn against or block destructive statements when no active transaction is detected. Broad capabilities include secure
pgcli is an interactive SQL shell and query editor for PostgreSQL with schema-aware autocompletion and table browsing, which directly matches the request for a terminal-based database exploration tool, though it is single-database rather than multi-database.
CLI for SQLite Databases with auto-completion and syntax highlighting
litecli is a terminal-based interactive SQL client for SQLite with auto-completion and syntax highlighting, fitting the search for a TUI database exploration and query tool, though it only supports SQLite rather than multiple database engines.
gui.cs is a .NET terminal user interface toolkit and framework used to build interactive, cross-platform text-based applications. It provides a structured system for composing terminal views using a view hierarchy and a dedicated layout engine. The library distinguishes itself through a component-based widget system and a constraint-based layout engine that allows interfaces to remain responsive across different terminal window dimensions. It employs a virtual-screen buffer to minimize flickering during redraws and uses state-driven theme configurations to maintain persistent visual styles.
gui.cs is a terminal UI toolkit for building interactive text-based applications, not a database exploration tool — it provides the interface layer you would use to build one, but does not itself connect to databases or run SQL queries.
Pglite is a client-side relational database engine that runs a full-featured PostgreSQL instance directly within browser and Node.js environments. By leveraging WebAssembly, it provides a persistent SQL storage solution that enables complex data management and querying without requiring an external database server. The project distinguishes itself through a reactive SQL data layer that automatically synchronizes user interface components with live query results. It manages database operations using worker threads to prevent main-thread blocking and coordinates access across multiple browser t
pglite is a client-side PostgreSQL engine for browser/Node.js environments, not a terminal-based interactive query tool — it provides SQL execution programmatically but lacks a TUI interface for browsing tables and writing queries interactively.
Inquirer.js is a command line input framework and prompt library for Node.js applications. It provides a structured set of tools for building interactive terminal interfaces, including menus, checklists, and text inputs, to gather user data and manage complex interactions. The framework allows for the creation of dynamic user experiences through branching prompt logic and the resolution of asynchronous configurations. Users can define custom prompts using a provided API and localize interface text into different languages. The library covers a wide range of input capabilities, including sing
Inquirer.js is a prompt and input library for building CLI interfaces, not a terminal-based database exploration tool—you would use it to construct such a tool, not to browse tables or run SQL queries yourself.
This project is a terminal user interface library for Node.js, designed to facilitate the construction of interactive command-line applications. It provides a comprehensive toolkit of high-level widgets that abstract complex terminal escape codes and rendering logic, allowing developers to build functional interfaces using reusable components. The framework distinguishes itself by implementing a box-model-based layout engine and a virtual DOM-style reconciliation system. These mechanisms enable responsive design patterns—such as percentage-based sizing and relative positioning—to function wit
This is a terminal user interface library for building command-line applications, not a ready-to-use database browser and query tool — you would use it to build one, not to explore databases directly.
Ink is a declarative framework for building interactive command-line applications using a component-based architecture. It functions as a console renderer that maps component trees to terminal output buffers, allowing developers to manage stateful interfaces through standard component reconciliation. By translating high-level layout and style properties into terminal control codes, it enables the creation of responsive, dynamic interfaces within the console. The framework distinguishes itself by integrating a cross-platform layout engine that applies a flexible box model to the character-base
Ink is a declarative TUI framework for building interactive CLI apps in React style, not a ready-to-use database exploration and SQL query tool — you would need to build your own on top of it, so it is a building block, not the interactive database browser you are looking for.
Beekeeper Studio is a cross-platform desktop application designed for database management and SQL development. It provides a unified graphical interface to connect to, query, and modify data across a wide range of relational and NoSQL database systems. The application functions as a comprehensive workspace, integrating tools for schema design, record editing, and data visualization. The project distinguishes itself through a focus on secure, flexible connectivity and AI-assisted workflows. It supports advanced authentication methods, including enterprise single sign-on, multi-factor authentic
Beekeeper Studio is a desktop GUI application for database management, not a terminal-based tool — it provides the same database exploration and SQL query capabilities but through a graphical interface rather than a TUI, which does not match the request for a terminal-based interactive tool.
tui-rs is a Rust framework for building rich terminal user interfaces and dashboards. It provides a terminal layout engine for dividing the screen into flexible rectangular regions and a widget library for rendering data in a terminal. The project includes a cross-platform terminal backend abstraction layer to ensure consistent rendering and compatibility across different operating system terminal drivers. The framework covers a wide range of UI components, including data visualization tools such as charts, progress gauges, and sparklines, as well as structural elements like data tables, ite
tui-rs is a Rust framework for building terminal user interfaces, not a ready-to-use database browser or SQL query tool — you would use it as a component to build your own tool rather than directly exploring tables and writing queries.
python-prompt-toolkit is a Python library and terminal user interface framework used for building interactive command line interfaces. It provides a toolkit for constructing complex terminal applications with advanced input handling and layout management. The project features a real-time syntax highlighting engine and a rendering system that ensures correct alignment and display of double-width Unicode characters. It includes specialized capabilities for command line autocompletion, providing ghost text suggestions and searchable input history. The framework covers a broad range of interface
python-prompt-toolkit is a terminal UI framework for building interactive CLIs, not a ready-to-use database browser and SQL query tool—it lacks the database connectivity and query execution you need.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| maxteabag/sqlit | 3.7K | Python | mit | |
| dbcli/mycli | 11.9K | Python | BSD-3-Clause | |
| dbcli/pgcli |
| 13.2K |
| Python |
| BSD-3-Clause |
| dbcli/litecli | 3.3K | Python | BSD-3-Clause |
| migueldeicaza/gui.cs | 11.1K | C# | MIT |
| electric-sql/pglite | 14.7K | TypeScript | apache-2.0 |
| sboudrias/inquirer.js | 21.6K | TypeScript | MIT |
| chjj/blessed | 11.9K | JavaScript | NOASSERTION |
| vadimdemedes/ink | 38.9K | TypeScript | MIT |
| beekeeper-studio/beekeeper-studio | 22K | TypeScript | other |