Commit Graph

159 Commits

Author SHA1 Message Date
t8y2 b80f3e8088 feat(connection): add HTTP tunnel 2026-07-03 22:11:03 +08:00
t8y2 c2b687b271 fix(mcp): document portable data directory 2026-07-01 12:11:03 +08:00
B022MC cb8989153a
fix: 修复连接树偶发只剩用户与权限 2026-06-30 17:34:13 +08:00
t8y2 96f265507d fix(docs): update offline driver downloads 2026-06-30 01:22:36 +08:00
二丫讲梵 c925f9a9de
feat(docs): add Makefile build flow and update docs
*  feat(docs): 更新文档以支持 Makefile 构建流程

- 添加 Makefile 文件以简化开发环境设置
- 更新 README 和中文文档,说明使用 `make` 命令进行依赖安装和启动开发环境
- 更新快速开始文档,增加 Makefile 相关说明

*  feat(docs): 更新文档以支持 Makefile 构建流程和快速检查命令

*  feat(docs): 更新文档以说明如何贡献官网内容和预览文档
2026-06-27 23:52:54 +08:00
miracle 2759480331
[pip-01]: add connect pip docs
* pip: add connect pip docs

* pip: edit connect pip docs
2026-06-25 22:30:16 +08:00
二丫讲梵 5a3c9f09dc
feat(doc): 补齐当前支持的数据库列表
- 在 LandingFooter 组件中添加了指向 CNB 的链接
- 新增 CNB 图标 SVG 文件
- 新增数据库相关图标文件,包括 Milvus、Pulsar、Qdrant、Weaviate 和 Zookeeper
2026-06-25 15:34:36 +08:00
t8y2 d91f1fbb38 fix(mcp): use linux local data dir 2026-06-24 15:51:10 +08:00
二丫讲梵 39796f2b38
feat(docs): add eryajf testimonial
- 增加用户推荐信息,包括姓名、角色和引用
- 新增用户头像文件
2026-06-24 11:33:10 +08:00
二丫讲梵 3ca30ce74f
docs(nacos): add Nacos support docs and fix questdb icon 2026-06-24 10:25:06 +08:00
二丫讲梵 3ebfae05a2
feat(nacos): add Nacos management console (#1456) 2026-06-24 01:19:18 +08:00
t8y2 5f227bb89b fix(docs): filter out agents releases from changelog
- Filter agents-* releases in sync-changelog.mjs (source)
- Filter agents-* releases in changelog.ts (fallback)
- Prevents internal agent releases from appearing in user-facing changelog
2026-06-24 00:32:07 +08:00
t8y2 844d4928e9 docs: update documentation for recent 3-month features
Updated 14 documentation files covering major feature additions:
- Query editor: execution target picker, history time range filter
- Data grid: copy with headers, column reordering, binary hex viewer
- MongoDB: database/collection deletion, metadata display, use command
- Redis: command history navigation, text selection, slowlog panel
- AI assistant: searchable model dropdown, prompt history navigation
- Database support: PrestoSQL
- Keyboard shortcuts: Ctrl+P quick open for database objects
2026-06-23 17:49:54 +08:00
t8y2 3a25487dea feat(agents): move agents into dbx repo 2026-06-23 11:38:16 +08:00
miracle 2a59d3143e
feat(mq): implement Apache Pulsar message queue admin
* feat(mq): implement Apache Pulsar message queue admin

- Add complete MQ admin adapter layer with version detection
  * Pulsar adapter with multi-version API support
  * OAuth2 token caching and authentication
  * JWT token signing for Pulsar clients
  * Transport layer (SSH/Proxy) integration

- Implement comprehensive admin operations
  * Tenant, namespace, topic management
  * Subscription and consumer/producer monitoring
  * Rate limits, backlog quotas, retention policies
  * Permissions and role-based access control
  * Raw admin API for advanced operations

- Add desktop UI components
  * MQ admin console with tabbed interface
  * Tenant, namespace, topic panels
  * Subscription management and cursor operations
  * Monitoring panel with stats visualization
  * Policy configuration UI

- Add web routes for MQ admin operations
- Add secret store support for MQ auth credentials
- Add comprehensive test coverage

* fix: del local test files

* fix(mq): mark message queue as unsupported mcpMode in driver manifest

MQ admin connections do not use the MCP query bridge - they use a
separate REST admin API. Mark mcpMode as 'unsupported' to align with
the test expectations and reflect the actual architecture.

Fixes CI test: driver-manifest.test.ts

* fix(mq): fix TypeScript errors in MQ components

- Fix typo in SubscriptionsPanel.vue: messagformatError(e)Id -> message.messageId
- Use formatError() helper in RawApiPanel.vue instead of accessing e?.message
- Fix undefined 'tab' reference in ConnectionTree.vue: use config.db_type instead

Fixes frontend CI TypeScript check errors.

* fix(mcp): add 'mq' to MCP server connection type description

The MCP server's connection type description must include all database
types from the driver manifest. Add 'mq' to the list to fix the test:
'add connection database type description includes every manifest database type'

Fixes: packages/mcp-server/tests/driver-manifest.test.ts

* fix(mq): add missing ConnectionConfig fields for Rust compilation

- Add gbase_server and keepalive_interval_secs fields to all ConnectionConfig
  test constructors in mq/config.rs, mq/service.rs, and storage.rs
- Import uses_bare_mysql_pool in connection.rs tests module

Fixes compilation errors from upstream ConnectionConfig changes.

* chore(ui): simplify Pulsar icon to logo-only version

Remove text from Pulsar icon (127x30 -> 35x30), keeping only
the wave logo symbol for a cleaner, more consistent appearance
with other database icons.

* fix(mq): return removed pools from drain_connection_pools

---------

Co-authored-by: t8y2 <1156263951@qq.com>
2026-06-16 21:57:17 +08:00
t8y2 8d4a08c3d5 fix(desktop): sort batch table drop by foreign key dependency 2026-06-16 15:01:21 +08:00
t8y2 aff9ca49c1 fix(release): purge Cloudflare cache after publish 2026-06-16 13:16:20 +08:00
t8y2 dcae3eeca0 chore: sync hero carousel with README screenshots 2026-06-16 12:11:06 +08:00
t8y2 4a14cf3f3e chore: update README screenshots with higher resolution 2026-06-16 11:55:49 +08:00
t8y2 21b7125638 feat: add landing page footer with repo links 2026-06-15 18:31:47 +08:00
John Jin 1afc271c18
feat: add QuestDB support
Thanks @ptma!
2026-06-14 22:58:05 +08:00
Vergil Lai f385386284
feat(manticore): add Manticore Search support
Add Manticore Search table data editing, structure editing, metadata handling, and SQL completion support.
2026-06-14 16:01:02 +08:00
SuLea-IT 97192297eb
feat(query): add switchable query result runs and archives
* docs: design query result run tabs

* feat(query): add result run model helpers

* feat(query): persist result run metadata

* feat(query): record switchable result runs

* feat(query): sync active result run state

* feat(query): cache result run payloads

* feat(query): render result run tabs

* docs: design query result archives

* feat(query): add result archive codec

* feat(query): restore result archives

* feat(query): add result archive actions

* fix(query): toggle execution summary view

* fix(query): avoid archive compression backpressure

* feat(query): remove result runs

* chore: remove local spec docs from pr
2026-06-14 10:30:50 +08:00
Vergil Lai 799d20a2cf
添加 Manticore Search 支持 (#1145)
* 添加 Manticore Search 支持

* 更新 Manticore Search 文档
2026-06-13 20:23:36 +08:00
t8y2 2d1d40f6ab feat(highgo): geometry/geography map preview via agent column_types 2026-06-13 10:25:12 +08:00
t8y2 a4768db69c fix(docs): remove non-existent initials property in homepage 2026-06-11 14:11:57 +08:00
t8y2 97ccd56299 fix(docs): remove non-existent initials property in databases page 2026-06-11 14:01:02 +08:00
t8y2 65f6e866b1 feat(docs): expand database support page to 50+ engines 2026-06-11 13:49:43 +08:00
t8y2 6f253abe55 fix: paginate contributor wall and add static fallback 2026-06-11 12:45:42 +08:00
SuLea-IT 5cf736ad96
feat: optimize data compare memory usage
Thanks @SuLea-IT for the contribution! This significantly reduces memory usage (53% lower RSS peak) by avoiding per-row HashMap materialization and cloning. Appreciate the detailed memory audit docs as well.
2026-06-11 11:57:22 +08:00
SuLea-IT 634e26e8e7
Merge PR #1024 2026-06-11 10:47:42 +08:00
t8y2 ddfbc2c3b5 fix(docs): disable landing page scroll-reveal animation 2026-06-11 10:38:12 +08:00
t8y2 27aef6059d feat(docs): add contributors wall to landing page 2026-06-10 19:03:04 +08:00
t8y2 59d2dd7c87 feat: add Homebrew formula for dbx-cli 2026-06-10 13:55:33 +08:00
t8y2 e0269a07cc chore(docs): gitignore tsbuildinfo 2026-06-10 12:52:04 +08:00
t8y2 5778f73fac feat(docs): add SoftwareApplication schema, llms.txt, and AI crawler rules 2026-06-10 12:50:43 +08:00
t8y2 edba8214b5 feat: show username/password fields for Access database connections 2026-06-10 08:37:18 +08:00
SuLea-IT 5138c1a702
Add configurable SQL formatter settings (#908)
Thanks!
2026-06-09 12:05:17 +08:00
Yong Studt 98342184af
feat(elasticsearch): translate SELECT * WHERE to ES DSL in-process (#910)
* feat(elasticsearch): translate SELECT * WHERE to ES DSL in-process

`SELECT *` with clauses our hand-written parser doesn't cover (WHERE, IN, BETWEEN, LIKE, IS NULL, ...) is now parsed with sqlparser-rs and translated to a /_search body locally — we no longer hand it off to ES's _sql endpoint.

Why: _sql refuses several common shapes — LIKE on a text field with no .keyword sub-field (the typical filebeat / log-shipper mapping), and SELECT * over docs containing an array field like host.ip. Both translate cleanly to raw DSL. Going through _sql/translate doesn't help either — that lives in the same ES SQL engine and inherits the same restrictions.

Translation:
- field = 'v'                  → term
- field LIKE 'prefix%'         → prefix (optimised)
- field LIKE '%x%'             → wildcard, case_insensitive
- field IN ('a','b')           → terms
- field BETWEEN a AND b        → range gte/lte
- field >/<>=/<=               → range
- field IS NULL / IS NOT NULL  → bool.must_not.exists / exists
- A AND B AND C                → flattened bool.must
- A OR B                       → bool.should, minimum_should_match: 1
- NOT A                        → bool.must_not
- ORDER BY f ASC|DESC          → sort
- LIMIT N OFFSET M             → size / from

SQL LIKE patterns: % → *, _ → ?, backslash escapes preserved, user-written * / ? in patterns escaped back to literals.

Input runs through the existing adapt_elasticsearch_sql_query first so hyphenated indices (filebeat-7.17.1-…) and @timestamp-style identifiers reach sqlparser as double-quoted identifiers.

Also: 0-hit _search bodies now surface as an empty grid (with an _id column placeholder) instead of falling back to the raw status/response JSON view — `.filter(|h| !h.is_empty())` was masking the empty-result case.

Adds docs/screenshot-es-sql-where.png demonstrating SELECT * with WHERE log.offset = N on a long field — would 400 through _sql, works through the in-process translator.

Follows up on #874.

* chore(test): fill ConnectionConfig::idle_timeout_secs in test fixtures

After the new pub idle_timeout_secs: u64 field was added to ConnectionConfig, 11 #[cfg(test)] / tests fixture constructors still built the struct without it, so `cargo test --workspace --locked` and `cargo clippy --all-targets` would fail with E0063 against the test profile. `cargo check` alone passed because the lib path doesn't compile tests.

Filled in with default_idle_timeout_secs() (matches the field's own #[serde(default = …)]) so future bumps to the default flow through automatically.

---------

Co-authored-by: t8y2 <1156263951@qq.com>
2026-06-09 11:59:49 +08:00
二丫讲梵 178a800ce8
feat(shortcuts): 添加打开设置的键盘快捷键
新增 openSettings 快捷键,默认绑定 Mod+,,用于触发设置对话框。

包含所有语言包的翻译、键盘快捷键文档更新,以及测试用例。
2026-06-08 21:52:26 +08:00
t8y2 19139a9b34 feat(docs): add offline driver downloads 2026-06-08 21:50:00 +08:00
Yong Studt 2628fb8374
feat(elasticsearch): add SQL-model execution with mapping-aware completion
- Route SELECT * FROM <index> through /_search for simple browses; aggregates/projections stay on /_sql
- Drive completion columns from /_mapping (flattened dotted fields, multi-fields)
- Switch editor completion to SQL when the active statement starts with SELECT/WITH on ES
- Skip generic SQL semantic diagnostics for ES (hyphenated wildcard indices caused 500s)
- Wire ES into server-side pagination plan; derive completion context from line blocks
- Fix result-grid pagination exceeding in-memory result sets (allRowsLoaded)
2026-06-08 17:53:05 +08:00
t8y2 fabf2172e4 chore: migrate test runner from node:test/tsx to vitest
155 files, 1091 tests, 4.3s (2x faster than previous 9.1s).
2026-06-08 01:17:27 +08:00
t8y2 a473f4ff8f chore: switch license to Apache-2.0 2026-06-07 17:34:59 +08:00
Xudong Guo 9b15843e1a feat: add KWDB support 2026-06-05 16:55:38 +08:00
t8y2 2a59304e02 fix: update .gitignore 2026-06-04 13:29:24 +08:00
Francesco Lucarelli 775f0c79c9
docs(getting-started): set brew upgrade to use official homebrew cask 2026-06-02 10:46:55 +02:00
Francesco Lucarelli d87bd4ad91
docs(getting-started): use official homebrew cask (#607)
Update Homebrew install instructions to use the official Homebrew Cask now that DBX is available in homebrew/cask.
2026-06-02 01:24:42 +08:00
t8y2 218b1d79a1 docs(site): update theme and search 2026-06-01 13:29:36 +08:00
t8y2 bbd07e564b feat(grid): support binary cell downloads 2026-05-31 12:44:02 +08:00
t8y2 4d32127522 docs: use private Homebrew tap install command 2026-05-30 10:50:39 +08:00
t8y2 548692f073 ci: add official Homebrew cask bump workflow 2026-05-30 09:41:44 +08:00
t8y2 81e50cadb5 feat: add XuguDB agent support 2026-05-30 09:12:34 +08:00
t8y2 58c92a038b fix(docs): update database count from 35+ to 40+ 2026-05-28 02:13:21 +08:00
t8y2 4b9f770534 feat(docs): add comprehensive SEO optimization for static docs site
Add per-page metadata, Open Graph / Twitter tags, canonical URLs,
hreflang, sitemap generation, robots.txt, and JSON-LD structured data
for the bilingual (en/cn) documentation site.
2026-05-28 00:31:34 +08:00
t8y2 b53a6dac8c docs: add 7 new docs pages and update 4 existing ones
Add new pages: Redis Browser, MongoDB Browser, Driver Management,
Keyboard Shortcuts, Object Browser, Connection Import, SQL Snippets.
Update: Data Grid (transpose view, column formatters, multi-row ops),
Table Structure Editor (PK editing, column reorder, tab UI),
AI Assistant (thinking mode, table mentions),
Database Support (ClickHouse TLS, GaussDB native, DuckDB modes).
2026-05-25 22:54:58 +08:00
SuLea-IT 64c068bbf5
perf: reduce high-density DOM memory (#404) 2026-05-22 14:02:13 +08:00
t8y2 35bfad8aec docs(spec): add query output panel collapse design 2026-05-21 00:40:02 +08:00
yavon007 13424588b9
Support DBX connection deep links (#359)
* fix(mysql): avoid metadata collation conflicts

Split MySQL column and primary key metadata lookups so MariaDB and OceanBase do not join information_schema tables with incompatible collations.

* feat(grid): add invert column visibility action

* feat(grid): improve cell detail editing

* feat(grid): add keyboard cell navigation

* feat(grid): add column name copy in header tooltip

* feat(grid): improve transpose navigation

* feat(connection): support dbx connection deep links

* docs: document connection deep links

* fix(connection): harden deep link boolean handling
2026-05-20 16:10:14 +08:00
t8y2 5003ef52e2 docs: update supported database count to 40+ 2026-05-20 11:41:01 +08:00
t8y2 244eb23287 fix(docs): deploy static site as worker 2026-05-18 20:51:44 +08:00
t8y2 2c1b0e2b83 fix(docs): remove unsupported pages assets config 2026-05-18 20:22:36 +08:00
t8y2 e9fd89ad16 fix(docs): deploy pages to cloudflare 2026-05-18 19:22:35 +08:00
t8y2 1917c0855b feat(cli): add dbx node packages 2026-05-18 00:53:06 +08:00
t8y2 19f7cbd2ba fix(docs): refresh release data from R2 2026-05-17 23:26:28 +08:00
t8y2 3337826b89 docs: sync MDX content with implementation 2026-05-17 11:35:15 +08:00
t8y2 71f9f11eec docs: add MDX code sync plan 2026-05-17 11:24:33 +08:00
t8y2 765314364a docs: add MDX code sync design 2026-05-17 11:19:49 +08:00
t8y2 181ce5e860 feat(docs): add changelog system, install tabs, and sync workflow
- Add ChangelogList component and changelog data fetcher
- Add platform icons for install tabs
- Add sync-changelog workflow (triggers on release publish)
- Add changelog sync script and releases-cn.json data
- Update InstallTabs and docs meta
2026-05-16 18:41:12 +08:00
t8y2 4a4ac570a2 feat(docs): extract shared nav, enhance landing background, add community page
- Extract LandingNav into shared component with lang/active props
- Add Home and Community nav items with active state highlighting
- Deepen landing background (#0b1120), strengthen hero glow, add CSS noise texture
- Sync changelog page to use shared nav and semantic colors
- Create /[lang]/community page with QQ, WeChat, Discord, GitHub Discussions
2026-05-16 18:39:09 +08:00
t8y2 5cbb659d54 feat: redesign docs landing hero with Tailwind migration
- Migrate landing CSS from raw classes to Tailwind v4 utilities (~1180 → ~680 lines)
- Add @theme block with landing design tokens
- Shrink download button, add OS auto-detection
- Nav bar transparent at top, glass effect on scroll
- Adjust hero spacing, title size, background color
- Remove white background from logo and favicon
- Force subtitle to single line on desktop
2026-05-16 16:03:04 +08:00
t8y2 e97e965ea1 fix: skip MySQL dump helper statements on import 2026-05-16 12:30:31 +08:00
t8y2 f4c7c1d764 fix: handle MySQL backup SQL import 2026-05-16 12:13:40 +08:00
t8y2 e9621ef06a Add TDengine support and editable grid handling 2026-05-16 11:33:42 +08:00
t8y2 2973bb1cd5 feat: add Highgo (瀚高) database support
Add full support for Highgo database, a PostgreSQL-compatible Chinese
domestic database. Includes database type definition, connection dialog,
agent driver mapping, and database icon.
2026-05-15 14:35:19 +08:00
t8y2 8ef1999ec9 fix(docs): restore root layout tags 2026-05-13 01:18:59 +08:00
t8y2 83216b2765 feat(docs): 升级首页与更新日志 2026-05-13 01:04:58 +08:00
t8y2 bf58045a28 Revert "feat(cli): add dbx-cli runtime and agent integration (#229)"
This reverts commit 58c47adef5, reversing
changes made to 3bcec8ef7f.
2026-05-12 17:31:54 +08:00
Illuminated2020 dd113ed714 build(dbx-cli): 将 CLI 二进制改名为 dbx-cli
- 更新 dbx-cli crate 的 bin 目标名,避免与桌面 dbx 目标冲突

- 同步计划文档中的 cargo run 命令引用

- 保留 runtime_client.rs 现有格式化改动
2026-05-12 16:43:46 +08:00
Illuminated2020 4991acf79a docs: add dbx cli runtime implementation plan 2026-05-12 16:43:46 +08:00
t8y2 dadcd1231f docs(jdbc): add JDBC plugin usage guide 2026-05-10 13:08:32 +08:00
t8y2 10bfede1c7 feat(jdbc): add optional JDBC plugin support 2026-05-10 12:57:38 +08:00
t8y2 fbe6eb79ba fix(docs): 修正文档站标签页和代码块样式 2026-05-10 00:13:19 +08:00
t8y2 cdb18baa6a fix(docs): improve code block styling 2026-05-09 23:52:41 +08:00
t8y2 a8d45ca0e7 docs: polish documentation theme 2026-05-09 19:18:13 +08:00
t8y2 0d8206b237 docs: refine documentation site 2026-05-09 19:02:20 +08:00
t8y2 51b8b9344f docs: update static docs for v0.5.0 new features
Add documentation for cell detail panel, ORDER BY filter, auto-fit
columns, Copy as INSERT, Redis browser overhaul, create/drop database
and schema, CROSS APPLY/OUTER APPLY completion, OceanBase Oracle mode
detection, and default database setting.
2026-05-09 13:19:39 +08:00
t8y2 5a281a8216 docs(mcp): update docs for connection CRUD tools and SQLite storage
- Add dbx_add_connection and dbx_remove_connection to all docs
- Update storage references from JSON files to SQLite (dbx.db)
- Bump MCP server version to 0.2.0
2026-05-08 12:17:52 +08:00
t8y2 89fa8c02be docs: add landing page and upgrade all documentation with advanced components
- Add product landing page with hero section, stats, feature cards, database badges, comparison table, and screenshots
- Register Fumadocs MDX components (Tabs, Steps, Callout, Cards, Accordions) globally
- Rewrite all 17 doc pages (CN + EN) with richer content, use cases, and advanced components
- Add competitive comparison table (vs DBeaver/Navicat/TablePlus)
- Add ~300 lines of responsive landing page CSS
2026-05-07 14:53:35 +08:00
t8y2 f164945d44 docs: update next-env.d.ts for Next.js 16 2026-05-07 13:57:35 +08:00
t8y2 af9c3cb025 docs: add static search support for documentation site 2026-05-07 13:56:42 +08:00
t8y2 8b5abfe832 docs: match wrangler name with Cloudflare Pages project 2026-05-07 13:48:01 +08:00
t8y2 0becd7e831 docs: fix wrangler.json assets config for static deployment 2026-05-07 13:45:35 +08:00
t8y2 875b75de47 docs: add wrangler.json to fix Cloudflare Pages static deployment
Tell wrangler to use the static `out` directory instead of trying
to run opennextjs-cloudflare build.
2026-05-07 13:42:08 +08:00
t8y2 fc4a4bfb5b docs: remove basePath for custom domain deployment
Remove /dbx basePath and update asset paths from /dbx/logo.png to
/logo.png for deploying docs site on a custom domain.
2026-05-07 13:21:46 +08:00
t8y2 aab6d7c3a4 docs: add system dependencies and update GaussDB driver info
- Add platform-specific system dependencies (unixODBC, Tauri libs) to
  README and getting-started docs
- Update GaussDB driver from odbc-api to rust-gaussdb in database docs
- Remove obsolete GaussDB ODBC setup instructions
- Fix Docker image and port in getting-started docs
2026-05-07 13:18:02 +08:00
t8y2 2f3a81b0f1 feat: add ODBC setup docs for DM and GaussDB, update connection color indicator 2026-05-07 02:45:59 +08:00
t8y2 87b4b62f3a fix(docs): add @types/node for CI build 2026-05-06 10:22:44 +08:00
t8y2 6a5a380fdd docs: migrate from VitePress to Fumadocs (Next.js)
- Replace VitePress with Fumadocs + Next.js for documentation site
- Configure i18n (English + 简体中文) with language switcher
- Migrate all 17 guide documents to MDX format with updated content
- Add ocean theme, GitHub/Discord/QQ social links
- Update GitHub Actions workflow for Next.js static export
- Update .gitignore for .next, out, .source directories
2026-05-06 10:17:17 +08:00
t8y2 97eeab2801 docs: update badges, community links, and VitePress homepage
- Replace small badges with for-the-badge style (downloads, contributors, Discord, QQ)
- Add database badges (Doris, StarRocks, Redshift, OceanBase, openGauss, GaussDB, KingBase, and more)
- Replace WeChat/QQ QR codes with Discord + QQ badge buttons
- Update VitePress homepage (25+ databases, new screenshots, Docker section)
- Update VitePress config (AGPL-3.0 footer, new description)
2026-05-06 02:35:50 +08:00