whodb-cli
WhoDB CLI - a powerful database management tool with interactive TUI, programmatic commands, and MCP server for AI assistants.
README
<div align="center">
<img src="./docs/logo/logo.svg" width="30px" height="auto" /> WhoDB
Lightweight, Fast, and Beautiful Database Management
Available on
🚀 Quick Start • 📖 Documentation • 🎮 Live Demo • 💬 Community
</div>
<p align="center"><img src="./docs/images/06-storage-unit-list-with-sidebar.png" alt="WhoDB Interface" width="100%" height="auto" /></p>
🎯 What is WhoDB?
WhoDB is the modern database management tool that developers actually want to use.
Built with GoLang and React, WhoDB is a lightweight (<50MB) yet powerful database client that combines blazing-fast performance with an intuitive, beautiful interface. Whether you're debugging a production issue, exploring a new database schema, or managing data for your next feature, WhoDB makes database management feel effortless.
Why WhoDB?
<table> <tr> <td width="50%">
🚀 Lightning Fast
- Instant startup (<1s)
- Real-time query results
- Efficient table virtualization
- 90% less resource usage than traditional tools
🎨 Beautiful & Intuitive
- Clean, modern interface
- Spreadsheet-like data grid
- Interactive schema visualization
- No training required
</td> <td width="50%">
🤖 AI-Powered
- Natural language to SQL
- Talk to your data conversationally
- Supports Ollama, OpenAI, Anthropic, and any OpenAI-compatible provider
- No complex query writing needed
🔧 Developer-Friendly
- Multi-database support
- Query history & management
- Mock data generation
- Flexible export options
</td> </tr> </table>
✨ Key Features
📊 Visual Data Management
<table> <tr> <td width="50%"> <img src="./docs/images/09-data-view-users-table.png" alt="Data Grid View" width="100%"/> </td> <td width="50%">
Spreadsheet-Like Data Grid
- View, edit, and manage data intuitively
- Sort, filter, and search with ease
- Inline editing with real-time updates
- Bulk operations for efficiency
</td> </tr> </table>
🔍 Interactive Schema Explorer
<table> <tr> <td width="50%">
Visual Schema Topology
- Interactive graph visualization
- Explore table relationships
- Understand foreign keys instantly
- Pan, zoom, and navigate easily
</td> <td width="50%"> <img src="./docs/images/24-graph-view-schema-topology.png" alt="Schema Graph" width="100%"/> </td> </tr> </table>
💻 Powerful Query Interface
<table> <tr> <td width="50%"> <img src="./docs/images/27-scratchpad-main-view.png" alt="Scratchpad" width="100%"/> </td> <td width="50%">
Scratchpad Query Editor
- Jupyter-like notebook interface
- Syntax highlighting & auto-completion
- Query history & reuse
- Multi-cell organization
</td> </tr> </table>
🗄️ Multi-Database Support
Community Edition (CE): PostgreSQL, MySQL, SQLite3, MongoDB, Redis, MariaDB, ElasticSearch
Enterprise Edition (EE): All CE databases plus Oracle, SQL Server, DynamoDB, Athena, Snowflake, Cassandra, and more
🎯 Advanced Capabilities
- Mock Data Generation - Generate realistic test data for development
- Flexible Export Options - Export to CSV, Excel, JSON, or SQL
- Advanced Filtering - Build complex WHERE conditions visually
- AI-Powered Queries - Convert natural language to SQL with Ollama, OpenAI, Anthropic, or any OpenAI-compatible provider
🎮 Try WhoDB Now
<div align="center">
Experience WhoDB in action without any setup
<table> <tr> <td align="center" width="50%"> <h3>🌐 Live Demo</h3> <p>Try WhoDB instantly with our sample database</p> <a href="https://whodb.com/demo/login?host=quick-container-491288b0-3138-48fa-93b4-1e730296c0b7.hello.svc.cluster.local&username=user&password=password&database=Adventureworks"> <img src="./docs/images/01-login-page.png" alt="Login Page" width="80%"/> </a> <p><a href="https://whodb.com/demo/login?host=quick-container-491288b0-3138-48fa-93b4-1e730296c0b7.hello.svc.cluster.local&username=user&password=password&database=Adventureworks"><strong>Launch Demo →</strong></a></p> <p><em>Pre-filled with sample PostgreSQL database</em></p> </td> <td align="center" width="50%"> <h3>🎥 Video Demo</h3> <p>Watch WhoDB in action</p> <a href="https://youtu.be/hnAQcYYzcLo"> <img src="https://img.youtube.com/vi/hnAQcYYzcLo/maxresdefault.jpg" alt="WhoDB Demo Video" width="80%"/> </a> <p><a href="https://youtu.be/hnAQcYYzcLo"><strong>Watch Video →</strong></a></p> <p><em>Complete walkthrough of features</em></p> </td> </tr> </table>
</div>
🚀 Quick Start
Option 1: Docker (Recommended)
The fastest way to get started with WhoDB:
docker run -it -p 8080:8080 clidey/whodb
Then open http://localhost:8080 in your browser.
Option 2: Docker Compose
For more control and configuration:
version: "3.8"
services:
whodb:
image: clidey/whodb
ports:
- "8080:8080"
environment:
# AI Integration (Optional)
# Ollama Configuration
- WHODB_OLLAMA_HOST=localhost
- WHODB_OLLAMA_PORT=11434
# Anthropic Configuration
- WHODB_ANTHROPIC_API_KEY=your_key_here
# - WHODB_ANTHROPIC_ENDPOINT=https://api.anthropic.com/v1
# OpenAI Configuration
- WHODB_OPENAI_API_KEY=your_key_here
# - WHODB_OPENAI_ENDPOINT=https://api.openai.com/v1
# Generic AI Providers (OpenAI-compatible endpoints)
# Use WHODB_AI_GENERIC_<ID>_* to add any OpenAI-compatible provider.
# <ID> can be any unique identifier (e.g., LMSTUDIO, OPENROUTER).
#
# LM Studio example:
# - WHODB_AI_GENERIC_LMSTUDIO_NAME=LM Studio
# - WHODB_AI_GENERIC_LMSTUDIO_BASE_URL=http://host.docker.internal:1234/v1
# - WHODB_AI_GENERIC_LMSTUDIO_MODELS=mistral-7b,llama-3-8b
#
# OpenRouter example:
# - WHODB_AI_GENERIC_OPENROUTER_NAME=OpenRouter
# - WHODB_AI_GENERIC_OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
# - WHODB_AI_GENERIC_OPENROUTER_API_KEY=your_key_here
# - WHODB_AI_GENERIC_OPENROUTER_MODELS=google/gemini-2.0-flash-001,anthropic/claude-3.5-sonnet
# volumes: # (Optional for SQLite)
# - ./sample.db:/db/sample.db
What's Next?
- Connect to your database - Enter your database credentials on the login page
- Explore your schema - Browse tables and visualize relationships
- Run queries - Use the Scratchpad to execute SQL queries
- Manage data - Edit, add, and delete records with ease
📖 For detailed installation options and configuration, see our Documentation
💻 WhoDB CLI
WhoDB also offers a powerful command-line interface with an interactive TUI (Terminal User Interface) and MCP server support for AI assistants.
Features
- Interactive TUI - Full-featured terminal interface for database management
- MCP Server - Model Context Protocol support for Claude, Cursor, and other AI tools
- Cross-Platform - Available for macOS, Linux, and Windows
Quick Install
# macOS/Linux
curl -fsSL https://raw.githubusercontent.com/clidey/whodb/main/cli/install/install.sh | bash
# Homebrew (coming soon)
brew install whodb-cli
# npm
npm install -g @clidey/whodb-cli
Usage
# Launch interactive TUI
whodb-cli
# Run as MCP server for AI assistants
whodb-cli mcp serve
📖 For full CLI documentation, see the CLI README
🛠️ Development Setup
Prerequisites
- GoLang - Latest version recommended
- PNPM - For frontend package management
- Node.js - Version 16 or higher
Editions
<table> <tr> <td width="50%">
Community Edition (CE)
- PostgreSQL
- MySQL / MariaDB
- SQLite3
- MongoDB
- Redis
- ElasticSearch
</td> <td width="50%">
Enterprise Edition (EE)
- All CE databases
- Oracle
- SQL Server
- DynamoDB
- Athena
- Snowflake
- Cassandra
- And more...
</td> </tr> </table>
📚 See BUILD_AND_RUN.md for detailed build instructions and ARCHITECTURE.md for architecture details.
Frontend Development
Navigate to the frontend/ directory and start the development server:
cd frontend
pnpm i
pnpm start
Backend Development
1. Build Frontend (First-Time Setup)
If the core/build/ directory doesn't exist, build the frontend first:
cd frontend
pnpm install
pnpm run build
rm -rf ../core/build/
cp -r ./build ../core/
cd ..
Note: This is only required once, as Go embeds the
build/folder on startup.
2. Setup AI Integration (Optional)
To enable natural language queries:
-
Ollama - Download from ollama.com
# Install Llama 3.1 8b model ollama pull llama3.1WhoDB will auto-detect installed models and show a Chat option in the sidebar.
-
OpenAI/Anthropic - Set environment variables (see Docker Compose example above)
-
Any OpenAI-compatible provider - Use
WHODB_AI_GENERIC_<ID>_*environment variables to connect to LM Studio, OpenRouter, or any provider with an OpenAI-compatible API (see Docker Compose example above)
3. Start Backend Service
cd core
go run ./cmd/whodb
The backend will start on http://localhost:8080
💼 Use Cases
👨💻 For Developers
<table> <tr> <td width="50%">
Local Development
- Quick database inspection during development
- Debug production issues with read-only access
- Test API endpoints with real data
- Explore schema changes
</td> <td width="50%">
API Development
- Validate data transformations
- Test query performance
- Generate mock data for testing
- Export data for integration tests
</td> </tr> </table>
📊 For Data Analysts
- Run ad-hoc SQL queries quickly
- Export data to Excel for analysis
- Build complex filters visually
- Visualize table relationships
🧪 For QA Engineers
- Generate realistic test data
- Verify database state during testing
- Debug test failures quickly
- Validate data migrations
🛠️ For Database Administrators
- Monitor table structures and indexes
- Manage user data efficiently
- Quick schema exploration
- Emergency data fixes
❓ Frequently Asked Questions
<details> <summary><strong>What makes WhoDB different from other database tools?</strong></summary> <br>
WhoDB combines the lightweight nature of tools like Adminer with modern UX, powerful visualizations, and AI capabilities. Unlike resource-heavy tools like DBeaver, WhoDB uses 90% less memory while providing a faster, more intuitive experience.
</details>
<details> <summary><strong>Is WhoDB suitable for production use?</strong></summary> <br>
Yes, WhoDB is production-ready and used by thousands of developers. For production environments, we recommend:
- Using read-only database accounts when possible
- Enabling SSL/TLS connections
- Consider Enterprise Edition for audit logging and advanced security features
</details>
<details> <summary><strong>How does WhoDB handle large datasets?</strong></summary> <br>
WhoDB implements several performance optimizations:
- Table virtualization for efficient rendering
- Lazy loading for large result sets
- Pagination controls
- Query result streaming
</details>
<details> <summary><strong>Which databases are supported?</strong></summary> <br>
Community Edition: PostgreSQL, MySQL, MariaDB, SQLite3, MongoDB, Redis, ElasticSearch
Enterprise Edition: All CE databases plus Oracle, SQL Server, DynamoDB, Athena, Snowflake, Cassandra, and more
</details>
<details> <summary><strong>How do I deploy WhoDB?</strong></summary> <br>
WhoDB can be deployed in multiple ways:
- Docker - Single command deployment
- Docker Compose - For production setups
- Kubernetes - For enterprise environments
- Binary - Direct installation on servers
See our Quick Start section for details.
</details>
<details> <summary><strong>Does WhoDB store my credentials?</strong></summary> <br>
No. WhoDB does not store database credentials by default. Connections are temporary and credentials are cleared when you close the browser. You can optionally configure connection profiles stored locally in your browser.
</details>
<details> <summary><strong>Can I use WhoDB with AI features?</strong></summary> <br>
Yes! WhoDB integrates with:
- Ollama - For local, private AI models
- OpenAI - GPT-4 and other OpenAI models
- Anthropic - Claude models
- Any OpenAI-compatible provider - LM Studio, OpenRouter, vLLM, and more via
WHODB_AI_GENERIC_<ID>_*environment variables
These integrations allow you to query your database using natural language instead of SQL.
</details>
🤝 Contributing
We welcome contributions from the community! Whether it's bug reports, feature requests, or code contributions, we appreciate your help in making WhoDB better.
How to Contribute
- Report Issues - Found a bug? Open an issue
- Request Features - Have an idea? Start a discussion
- Submit PRs - Want to contribute code? Check our Contributing Guide
- Improve Docs - Help us improve documentation
Development Resources
- Contributing Guide - Detailed contribution guidelines
- Architecture - Understanding the codebase
- Build & Run - Development setup instructions
📸 Screenshots
<details> <summary><strong>View More Screenshots</strong></summary>
Data Management
<img src="./docs/images/09-data-view-users-table.png" alt="Data View" width="100%"/>
Add/Edit Records
<img src="./docs/images/11-data-view-add-row-dialog.png" alt="Add Row" width="100%"/>
Advanced Filtering
<img src="./docs/images/16-data-view-where-conditions-popover.png" alt="Where Conditions" width="100%"/>
Export Options
<img src="./docs/images/20-data-view-export-dialog.png" alt="Export Dialog" width="100%"/>
Schema Graph Visualization
<img src="./docs/images/25-graph-view-with-controls.png" alt="Graph View" width="100%"/>
Scratchpad Query Editor
<img src="./docs/images/28-scratchpad-code-editor.png" alt="Scratchpad" width="100%"/>
Query Results
<img src="./docs/images/29-scratchpad-query-results.png" alt="Query Results" width="100%"/>
Multiple Database Support
<img src="./docs/images/51-login-database-types-all-options.png" alt="Database Types" width="100%"/>
</details>
🏢 Infrastructure & Support
WhoDB's deployment and CI/CD are powered by Clidey, a no-code DevOps platform.
Contact & Support
- Email: support@clidey.com
- GitHub Issues: Report a bug
- Discussions: Join the conversation
- Documentation: docs.whodb.com
<div align="center">
⭐ Star Us on GitHub!
If you find WhoDB useful, please consider giving us a star on GitHub. It helps us grow the community and continue improving WhoDB.
Built with ❤️ by the Clidey team
"Is it magic? Is it sorcery? No, it's just WhoDB!"
</div>
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。