# tql **Repository Path**: taoes_admin/tql ## Basic Information - **Project Name**: tql - **Description**: TQL 是一款基于 Tauri 2、React 19 和 Ant Design 6 构建的跨平台桌面数据库查询工具。它提供统一界面来查询和管理多种数据源(MySQL、Redis、Elasticsearch 等),实现通过 AI 能力自然语言转SQL,SQL性能分析,诊断,表文档自动化管理等能力,同时集成 AI 助手和系统设置面板,并通过应用级操控。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-06-05 - **Last Updated**: 2026-06-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TQL — Text Query Language

TQL Logo

[English](README.md) TQL 是一款基于 Tauri 2、React 19 和 Ant Design 6 构建的跨平台桌面数据库查询工具。它提供统一界面来查询和管理多种数据源(MySQL、Redis、Elasticsearch 等),集成 AI 助手和系统设置面板,并通过应用级快捷键操控。 ![](./docs/screenshots/index-3.png) [更多预览](./docs/screenshots/) ## 项目背景 现代数据工程师和开发者经常需要在多个数据库工具之间切换,这些工具 UI 不一致且存在上下文切换成本。TQL 的解决方案: - **统一的查询界面** — 在同一工具中查询 SQL、NoSQL 和搜索引擎数据库。 - **集成 AI 对话面板** — 提供查询建议、解释和数据分析辅助。 - **应用级快捷键** — `Cmd/Ctrl+,` 打开设置、`Cmd/Ctrl+R` 刷新,仅在窗口聚焦时生效,不污染全局快捷键。 - **模块化设置系统** — 涵盖系统设置、基础设置、模型设置、数据源和样式设置。 ## 架构设计 ``` ┌─────────────────────────────────────────────────────┐ │ Tauri 2 外壳 │ │ ┌──────────────┐ ┌──────────────────────────────┐ │ │ │ Rust 后端 │ │ WebView 前端 │ │ │ │ (lib.rs) │ │ ┌────────────────────────┐ │ │ │ │ │ │ │ App.tsx │ │ │ │ │ • Commands │◄─┼──┤ ┌──────────────────┐ │ │ │ │ │ • Plugins │ │ │ │ 侧边栏 (15%) │ │ │ │ │ │ • Events │──┼─►│ │ ├ SidebarTitle │ │ │ │ │ └──────────────┘ │ │ │ └ SidebarBody │ │ │ │ │ │ │ │ ├ 数据源选择 │ │ │ │ │ │ │ │ └ 数据库树 │ │ │ │ │ │ │ ├──────────────────┤ │ │ │ │ │ │ │ 内容区 (85%) │ │ │ │ │ │ │ │ ├ StatusBar │ │ │ │ │ │ │ │ ├ AIChat │ │ │ │ │ │ │ │ └ SystemSettings│ │ │ │ │ │ │ │ (Modal弹窗) │ │ │ │ │ │ │ └──────────────────┘ │ │ │ │ │ └────────────────────────┘ │ │ │ └──────────────────────────────┘ │ └─────────────────────────────────────────────────────┘ ``` ### 关键架构决策 | 层级 | 技术 | 职责 | |------|------|------| | 桌面外壳 | Tauri 2 | 窗口管理、原生 API、菜单/快捷键 | | 后端 | Rust | 业务逻辑、数据库驱动、文件 I/O | | 前端框架 | React 19 + TypeScript | UI 渲染、状态管理 | | UI 组件库 | Ant Design 6 + @ant-design/x | 对话气泡、表单、表格、树形控件 | | 样式 | Tailwind CSS 4 + CSS Modules | 原子化 CSS + 组件级样式 | | 构建 | Vite 7 | 前端开发服务器与打包 | ### 组件组织规范 所有组件遵循**文件夹模式**:`组件名/index.tsx` + `组件名/index.css`,逻辑与样式内聚。 ## 功能特性 ### 数据库浏览器 - 多数据源支持:MySQL、Redis、Elasticsearch,可通过配置扩展。 - 懒加载树形结构,浏览数据表、视图、函数。 ### AI 对话面板 - 支持多种 LLM 后端(OpenAI、Anthropic、本地模型)的对话式界面。 - 流式输出、上下文记忆、消息操作(复制、删除、重新播放)。 ### 系统设置(Modal 弹窗) - **系统设置**:自动启动、界面语言、更新策略。 - **基础设置**:查询超时、编辑器配置、导出默认值。 - **模型设置**:AI 提供商、API Key、Temperature、Token 限制。 - **数据源**:已连接数据库的增删改查管理。 - **样式设置**:主题(浅色/深色/跟随系统)、字体、布局密度。 ### 应用级快捷键 | 快捷键 | 功能 | |--------|------| | `Cmd/Ctrl + ,` | 切换设置面板 | | `Cmd/Ctrl + R` | 刷新数据 | 快捷键仅在应用窗口聚焦时触发,不会干扰其他应用。 ## 项目结构 ``` tql/ ├── src/ │ ├── App.tsx # 根组件:布局 + Modal + 快捷键 │ ├── App.css # 应用级布局样式 │ ├── main.tsx # 入口文件 │ └── components/ │ ├── AIChat/ # AI 对话面板 │ ├── ContentBody/ # 主内容区域 │ ├── SidebarBody/ # 侧边栏:数据源 + 数据库树 │ ├── SidebarTitle/ # 侧边栏:应用标题 │ ├── StatusBar/ # 顶部栏:刷新 + 设置按钮 │ └── SystemSettings/ # 设置弹窗 │ ├── GeneralSettings/ # 系统设置 │ ├── BasicSettings/ # 基础设置 │ ├── ModelSettings/ # 模型设置 │ ├── DataSourceSettings/ # 数据源 │ └── StyleSettings/ # 样式设置 ├── src-tauri/ │ ├── tauri.conf.json # Tauri 窗口与打包配置 │ ├── Cargo.toml # Rust 依赖 │ └── src/ │ ├── main.rs # Rust 入口 │ └── lib.rs # Tauri 命令与插件注册 ├── package.json # Node 依赖与脚本 ├── tsconfig.json # TypeScript 配置 ├── vite.config.ts # Vite 配置 ├── README.md # 英文文档 └── README.zh-CN.md # 本文件(中文文档) ``` ## 快速开始 ### 环境要求 - [Node.js](https://nodejs.org/) >= 18 - [pnpm](https://pnpm.io/) >= 8 - [Rust](https://www.rust-lang.org/) >= 1.70 - 各操作系统的 Tauri [前置依赖](https://v2.tauri.app/start/prerequisites/) ### 开发 ```bash # 安装依赖 pnpm install # 启动开发服务器(热更新) pnpm tauri dev ``` ### 构建 ```bash pnpm tauri build ``` 构建产物位于 `src-tauri/target/release/`。 ## 技术栈 | 类别 | 选型 | |------|------| | 桌面框架 | Tauri 2 | | 前端 | React 19, TypeScript 5.8 | | UI 组件库 | Ant Design 6.4, @ant-design/x 2.7 | | CSS | Tailwind CSS 4, tw-animate-css | | 图标 | @ant-design/icons 6.2 | | 字体 | Geist Variable | | 构建工具 | Vite 7, @vitejs/plugin-react 4.6 | | 包管理器 | pnpm | ## 许可证 Apache License 2.0 ## Star History Star History Chart