Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/clidey/whodb
A lightweight next-gen data explorer - Postgres, MySQL, SQLite, MongoDB, Redis, MariaDB & Elastic Search with Chat interface
https://github.com/clidey/whodb
anthropic chatgpt database elasticsearch explorer lightweight mariadb mongodb mysql ollama openai postgresql redis sqlite3
Last synced: 6 days ago
JSON representation
A lightweight next-gen data explorer - Postgres, MySQL, SQLite, MongoDB, Redis, MariaDB & Elastic Search with Chat interface
- Host: GitHub
- URL: https://github.com/clidey/whodb
- Owner: clidey
- License: gpl-3.0
- Created: 2024-06-11T10:10:59.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-10-29T05:16:55.000Z (about 1 month ago)
- Last Synced: 2024-10-29T17:12:27.572Z (about 1 month ago)
- Topics: anthropic, chatgpt, database, elasticsearch, explorer, lightweight, mariadb, mongodb, mysql, ollama, openai, postgresql, redis, sqlite3
- Language: TypeScript
- Homepage: https://whodb.clidey.com
- Size: 8.63 MB
- Stars: 1,122
- Watchers: 5
- Forks: 26
- Open Issues: 23
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-ai-tools - WhoDB - SQL/NoSQL/Graph/Cache/Object data explorer with AI-powered chat + other useful features (Code / Developer tools)
- awesome-repositories - clidey/whodb - A lightweight next-gen data explorer - Postgres, MySQL, SQLite, MongoDB, Redis, MariaDB & Elastic Search with Chat interface (TypeScript)
- awesome-ChatGPT-repositories - whodb - A lightweight next-gen data explorer - Postgres, MySQL, SQLite, MongoDB, Redis, MariaDB & Elastic Search with Chat interface (Openai)
- trackawesomelist - WhoDB (⭐784) - SQL/NoSQL/Graph/Cache/Object data explorer with AI-powered chat + other useful features (Recently Updated / [Sep 15, 2024](/content/2024/09/15/README.md))
- awesome-ai-dev-tools - WhoDB - AI-powered data explorer for various databases. (Database and SQL Tools / IDE Extensions)
- awesome-ai-tool - WhoDB - 支持SQL/NoSQL/图形数据库等的AI驱动数据探索工具。 (🌟 编辑推荐 / 编程辅助工具)
- awesome-ai-tool - WhoDB - 支持SQL/NoSQL/图形数据库等的AI驱动数据探索工具。 (🌟 编辑推荐 / 编程辅助工具)
README
# WhoDB
Build Status:### *"Is it magic? Is it sorcery? No, it's just WhoDB!"*
View screenshots of WhoDB
#### Table of Contents
1. [Description](#description)
2. [Key Features](#key-features)
3. [Demo](#try-the-demo)
4. [Documentation](#documentation)
5. [Quick Start](#quick-start)
6. [Development Setup](#development-setup)
7. [Frontend](#frontend-setup)
8. [Backend](#backend-setup)
9. [FAQs](#faqs)
10. [Contributing](#contributing)
11. [Infrastructure](#infrastructure)
12. [Contact details](#contact)## Description
**WhoDB** is a lightweight (~20MB), powerful, and user-friendly database management tool designed to streamline your database administration tasks.
Combining the simplicity of Adminer with enhanced UX and performance, WhoDB is built with GoLang to deliver optimal speed and efficiency.
With features like interactive schema visualization and inline editing, WhoDB caters to both small projects and complex enterprise systems.**WhoDB offers you the opportunity to talk to your data using natural language thanks to our integration with Ollama, ChatGPT, and Anthropic.
This feature allows you to perform queries and manage your data through conversation instead of complex SQL.**## Key Features
- **Conversate With Your Data:** No more wasting time crafting complex SQL queries - ask away!
- **Enhanced UX:** A clean, intuitive interface that’s easy to navigate.
- **Blazing Fast Performance:** Built with GoLang for exceptional speed, including table virtualization on the frontend.
- **Schema Visualization:** Interactive graphs to easily visualize your database schema.
- **Inline Editing & Preview:** Edit and preview data directly in the interface.
- **Broad Database Support:** Compatible with PostgreSQL, MySQL, SQLite3, MongoDB, Redis, MariaDB, & ElasticSearch.
- **Scratchpad:** A Jupyter notebook-like interface for performing database queries.## Try the demo
Experience WhoDB firsthand with our [live demo](https://whodb.clidey.com/demo/login?host=quick-container-491288b0-3138-48fa-93b4-1e730296c0b7.hello.svc.cluster.local&username=user&password=password&database=Adventureworks).
*Note: This demo is populated with a sample database from postgresDBSamples, with credentials pre-filled.*Or checkout our [demo video](https://youtu.be/hnAQcYYzcLo)
## Documentation
For more detailed information, check out our [Documentation.](https://whodb.clidey.com/docs/)
## Quick Start
Get up and running with WhoDB quickly using Docker:
```sh
docker run -it -p 8080:8080 clidey/whodb
```Or, use Docker Compose:
```sh
version: "3.8"
services:
whodb:
image: clidey/whodb
# volumes: # (optional for sqlite)
# - ./sample.db:/db/sample.db
ports:
- "8080:8080"
```Access WhoDB by navigating to http://localhost:8080 in your browser.
## Development Setup
### Prerequisites
- GoLang (latest version recommended)
- PNPM (latest version recommended)### Frontend Setup
To start the frontend service, navigate to the `frontend/` directory and run:
```sh
pnpm i && pnpm start
```### Backend Setup
##### 1. Preparing the Frontend for the Backend (Only if you don’t have a build/ directory in core/):
If the `core/` directory doesn't have a `build/` folder, you'll need to build the frontend and move it to the backend directory. From the root directory, run:
```sh
cd frontend && pnpm install && pnpm run build && rm -rf ../core/build/ && cp -r ./build ../core/ && cd -;
```
This command will compile the frontend and copy the `build/` folder to `core/`.
This step is required because Go will attempt to embed the `build/` folder on each launch.
You only need to do this once.##### 2. Setting up Ollama (if you'd like to enable the natural conversation integration)
Go to https://ollama.com/ and download it for your system.
Once that is done, we recommend that you start out with the [Llama 3.1 8b model](https://ollama.com/library/llama3.1).
WhoDB will automatically detect your installed model(s) and will show you a **Chat** option on the left sidebar.##### 3. Starting the Backend Service
If the `core/` directory already has a `build/` folder, or once you've completed the step above, you can start the backend service by running:
```sh
cd core/
go run .
```## FAQs
**What inspired the creation of WhoDB?**
WhoDB was inspired by Adminer for its lightweight nature and ease of use. We aimed to build on these qualities with enhanced visualization and a consistent user experience across various databases.**How does WhoDB handle large queries?**
WhoDB supports lazy loading, ensuring smooth performance even with large datasets.**What makes WhoDB different from DBeaver?**
Unlike DBeaver, which is feature-rich but resource-heavy, WhoDB is designed to be lightweight and efficient, running on minimal resources—perfect for smaller setups or resource-constrained environments.**Is WhoDB compatible with any database?**
WhoDB supports a wide range of databases, providing a consistent experience across SQL, NoSQL, and Graph databases. Currently, it supports PostgreSQL, MySQL, SQLite3, MongoDB, Redis, MariaDB, & ElasticSearch.**How do I deploy WhoDB?**
WhoDB can be deployed easily using Docker or Docker Compose. See the ["Quick Start"](#quick-start) section for details.**Q: Is WhoDB suitable for production environments?**
While WhoDB is lightweight and efficient, we recommend evaluating its suitability for your specific production environment.## Contributing
We welcome contributions from the community! Feel free to open issues or submit pull requests to help improve WhoDB.
We have a contribution guide [here](https://github.com/clidey/whodb/blob/main/CONTRIBUTING.md).## Infrastructure
WhoDB's deployment and CI/CD are managed by Clidey, a no-code DevOps platform. For more information, visit https://clidey.com
Clidey Build Status:
## Contact
For any inquiries or support, please reach out to [[email protected]](mailto:[email protected]).
*"Is it magic? Is it sorcery? No, it's just WhoDB!"*